rencaicgy139
38109
|
2009/7/22 16:38:12 |
问什么我装上后控件面板里面只有两个可见其他的看不到啊。 |
yuanfuh
37041
|
2009/3/31 15:56:59 |
请问怎么装这个控件呀 |
kinsunc
36913
|
2009/3/12 9:58:18 |
感觉还是不错的.不过实际使用了一下,发现中式金额栏还是有很大的bug的.希望能够改进. |
kinsunc
36911
|
2009/3/12 9:36:05 |
看了.发现bug还是很多.继续努力 |
wine
36726
|
2009/2/4 12:37:16 |
楼主好同志呀,祝早日找到好工作 |
nbanba9756
36653
|
2009/1/12 20:22:37 |
type TLKCustomDBGridEh=class(TCustomDBGridEh); 这句的意思是继承TCustomDBGridEh为了访问类中保护成员 c++的继承是不能在函数内和类中嵌套 你放在那里都行就是不能在用到类函数的后面 否则你就必须前向申明例如delphi很多源码中的TControl=class; 这样的前向说明。 我建议sharegem你要好好巩固一下c++基础概念 |
hnxxcxg
36509
|
2008/12/31 12:37:23 |
感謝諸位的關注,我會繼續改良的 |
sharegem
36491
|
2008/12/29 12:23:24 |
to :nbanba9756 type TLKCustomDBGridEh=class(TCustomDBGridEh);
放在哪里??这个修改版请发上来吧 |
jxpxshh
36475
|
2008/12/28 0:12:07 |
用过DevExpress ExpressQuantumGrid cxGrid才知道什么叫强大,看了ehlib就头痛,过滤时动不动就出错。 |
zcm1975117
36474
|
2008/12/27 19:33:07 |
嘿嘿,这年头,做程序员还是很辛苦的哈 另外那个统计的功能和统计图我觉得应该放在一起,没有必要分开,更方便用户. 另外那个统计图也有问题,最好是动态创建那个图! |
hnxxcxg
36467
|
2008/12/26 12:33:47 |
感謝nbanba9756 修正了BUG,只有大家的參與,這個控件才會做的更好~~ |
nbanba9756
36458
|
2008/12/24 23:07:35 |
TO HNXXCXG 这段代码有点瑕疵,如果记录数大于显示的行数以后,序号就不正常了 我改动了一下,现在正常了。和kinneng的效果一样随便怎么插入或添加都正常 在TCustomDBGrideh protected 中加入一个属性 FDataRowTop:integer; type TLKCustomDBGridEh=class(TCustomDBGridEh); procedure TGridDataLinkEh.DataEvent(Event: TDataEvent; Info: Integer); {$ENDIF} begin inherited; //add by lk 辅助显示序号 if (Event = deCheckBrowseMode)and(FGrid<>nil) then TLKCutomDBGridEh(FGrid).FDataRowTop:= FGrid.DataRowToRecNo(0); //end by lk {$IFDEF EH_LIB_7} if Event = deDisabledStateChange then FGrid.Columns.ActiveChanged; {$ENDIF} end;
procedure TCustomDBGridEh.DrawColumnCell(const Rect: TRect; DataCol: Integer; Column: TColumnEh; State: TGridDrawState); //add by cxg var Str: string; i,t: Integer; //end by cxg begin //add by cxg if (dgIndicator in Options) and FShowSerialNo then begin Canvas.Brush.Style := bsClear; if Column.Field.Dataset.State = dsInsert then //append state begin //下面不需要了 { if DataSource.DataSet.RecordCount-datarowcount<0 then t:=0; if DataSource.DataSet.RecordCount-datarowcount=0 then t:=1; if DataSource.DataSet.RecordCount-datarowcount=1 then t:=2; if DataSource.DataSet.RecordCount-datarowcount>=2 then t:=DataSource.DataSet.RecordCount-datarowcount+1; i:=MouseCoord(Rect.Left + 1, Rect.Top + 1).Y+t;} //到这里结束 i:=MouseCoord(Rect.Left + 1, Rect.Top + 1).Y+FDataRowTop-1; str := Format('%d', [i]); end else if not DataSource.DataSet.IsEmpty then //no append state str:=Format('%d',[DataSource.DataSet.RecNo]); Canvas.TextOut((ColWidths[0] - Canvas.TextWidth(Str) - IndicatorWidth) shr 1, Rect.Bottom - Canvas.TextHeight('0') - 2, Str); Canvas.TextOut(0,0,'序号'); //add by cxg 2008-01-02 11:02:05 end; //end by cxg if Assigned(OnDrawColumnCell) then OnDrawColumnCell(Self, Rect, DataCol, Column, State); end; 顺便说一句我也是湖南人 |
jone_h
36451
|
2008/12/24 0:33:04 |
向楼主致敬! 希望你已找到合适的工作了。我也失业中 |
xxzqb
36441
|
2008/12/22 16:56:39 |
不好意思,
我想问一下,这个控件如何加入到Delphi中呢?
望赐教, 谢谢。 |
aagen
36327
|
2008/12/10 6:15:49 |
呵呵,楼主好样的啊
我下载了你之前的版本
感觉还不错哦
另外为我的老乡支持加油o(∩_∩)o...哈哈 |
hnxxcxg
36316
|
2008/12/9 9:47:38 |
欢迎大家根据自己项目的需要对该控件做出适当的修改 |
happyhong
36295
|
2008/12/5 20:24:36 |
楼主,我比你小一年,我也是这三年才正式加入到软件公司工作,之前也是维护+业余,在软件编写方面,兴趣+细心+思路都很重要的,相信你进到软件公司的! 你那个增强方面的控件的分组统计,我想封装成控件,让用户能选择数据源(SQLSERVER或ACCESS)等,这样可用性就强多了 |
hnxxcxg
36291
|
2008/12/5 12:21:57 |
TO 红哈 你改成SQL SERVER临时表就不通用了,ACCESS表在WINDOWS操作系统里面是通用的,你那样,人家非得安装SQL SERVER数据库。
另外本人虽然30岁了,但实际开发项目只有年把时间,可以说属于工作不太稳定期,虽然本人很想稳定发展。所以一年之内多次失业,多次找工作,让某些人觉得不理解了。我也是冒办法:一大把年纪了才正式干程序员。但我还是敢于毛遂自荐:此人大可放心使用。呵呵。再次感谢红哈捧场。听不懂的话,我讲的是湘乡话。呵呵。 |
happyhong
36290
|
2008/12/5 11:28:25 |
不愧是楼主,求职求到这了,佩服你的勇气和对程序的兴趣。 那个问题我解决了 我改了大概几处,也把ACCESS的临时表移植进SQLSERVER中 function TADOBatchMove.ADOTableCreatefromQuery(ADOTablepara: TADOTable):boolean; var i:integer; begin result:=false; // FDESTADOQuery.connectionString:=ADOTablepara.connectionString; FDESTADOQuery.Connection:=ADOTablepara.Connection; FDESTADOQuery.sql.Clear; //hzh 2008-12-03 转到在SQLSERVER中创建临时表 FDESTADOQuery.sql.add('if object_id(''tempdb..#grp'') is not null drop table #grp'); ////////// FDESTADOQuery.sql.add('create table '+ ADOTablepara.Tablename +'('); // for i:=0 to FSOURCEADOQuery.fielddefs.Count-1 do // begin // if i<FSOURCEADOQuery.fielddefs.Count-1 then // FDESTADOQuery.SQL.Add(FSOURCEADOQuery.fielddefs[i].Name+' '+ // datatypetoaccesstypeandsize(FSOURCEADOQuery.fielddefs[i])+',') // else FDESTADOQuery.SQL.Add(FSOURCEADOQuery.fielddefs[i].name+' '+ // datatypetoaccesstypeandsize(FSOURCEADOQuery.fielddefs[i])+')'); // end;
for i:=0 to FSOURCEADOQuery.fields.Count-1 do begin if i<FSOURCEADOQuery.fields.Count-1 then FDESTADOQuery.SQL.Add(FSOURCEADOQuery.fields[i].fieldname+' '+ datatypetoaccesstypeandsize(FSOURCEADOQuery.fields[i])+',') else FDESTADOQuery.SQL.Add(FSOURCEADOQuery.fields[i].fieldname+' '+ datatypetoaccesstypeandsize(FSOURCEADOQuery.fields[i])+')'); end;
FDESTADOQuery.execsql; FDESTADOQuery.close; result:=true; end; //////////
function TADOBatchMove.datatypetoaccesstypeandsize(ftdef: TField): string; begin
with ftdef do begin case DataType of ftAutoInc:Result:='integer'; ftstring: Result:='varchar('+inttostr(ftdef.Size)+')'; ftWideString: Result:='varchar('+inttostr(ftdef.Size)+')'; ftsmallint: result:='integer'; ftinteger: Result:='integer'; // ftfloat: Result:='double'; ftfloat: Result:='decimal('+inttostr(tfloatfield(ftdef).Precision)+ ','+inttostr(tfloatfield(ftdef).Size)+')'; ftcurrency: result:='money'; ftbcd: Result:='decimal('+inttostr(tbcdfield(ftdef).Precision)+ ','+inttostr(ftdef.Size)+')'; ftboolean: result:='bit'; ftDateTime: Result:='datetime'; else Result:='varchar('+inttostr(ftdef.Size)+')'; end; end; end; |
hnxxcxg
36281
|
2008/12/3 11:56:02 |
delphi求职
姓名:陈新光 性别:男 出生年月:1978年9月29日籍贯:湖南省湘乡市梅桥镇丰隆村伍组身高:165CM 体重:60KG 身体状况:绝对健康(有健康证)学历:中专 在校期间:1994年至1998年 毕业院校:湖南省岳阳市长岭石油学院手机:13054488940 EMail:hnxxcxg@yahoo.com.cnQQ:254072148 工作经历: 1998年至2001年湘潭市步步高连锁超市有限公司任网络维护员 2002年至2006年湘潭市志诚科技有限公司任技术员从事付食、百货POS软件系统集成 2006年至2007年中山市和景酒楼维护中餐餐饮POS软件 2007年至2008年佛山市易联资讯任程序员开发钢木门、铝合金门业软件 2008年深圳市华旭科技开发有限公司任程序员开发多表远传和管网压力软件 自我评价: 有一定的软件开发经验,能熟练地使用DELPHI进行数据库软件的开发。 从事软件开发纯粹兴趣使然,所以想一直地坚持下去。在从事网络维护、系统集成的多年时间里(始于2003年)业余时间里学习软件开发技术,应该来说已经深入了DELPHI语言的许多开发技术层面。能进行SOCKET网络编程;能使用INDY控件进行开发网络。会开发多线程程序。这有盒子上的一些作品为证(都是业余时间感兴趣写的)。但实际从事开发软件项目的时间并不长,所以想融入比较成熟的开发团队里面学习一番,加强对整个开发的可控制性。本人本着谦虚、谨慎的态度想在软件项目的实际开发取些真经,对待遇要求不高,般般就行。希望贵公司能给予我这种机遇。目前人在深圳。 作品展示: http://2ccc.com/search.asp?KeyWord=hnxxcxg&Submit=%BF%EC%CB%D9%CB%D1%CB%F7或者请您google或百度搜一下"hnxxcxg"这个关键字就能看到我的一些作品。 如蒙贵公司录用,不胜荣幸。 |