我的问题 现在我用TabControll显示标题相同的内容(也就是说标签上显示的内容相同),通过ID来识别数据唯一性,ID不能显示。应该怎么存储ID???谢谢
回复人: cqwty(笨小孩) ( ) 信誉:92 2004-11-20 16:39:36 得分: 5
你的意思没有搞懂啊,如果你使用的标题内容是相同的,那么你自己怎么知道哪一个标题对应的是什么操作呢?你怎么就知道你tabcontroll的id呢?
回复人: spng(Sinpy) ( ) 信誉:100 2004-11-20 16:45:24 得分: 0
是啊,我就要解决这个问题!
不过我进行数据初始化的时候是可以知道的,关键是我不知道应该把ID存储在那里?
回复人: cronuz(cronus) ( ) 信誉:105 2004-11-20 20:47:57 得分: 50
procedure TForm1.FormShow(Sender: TObject);
begin
TabControl1.Tabs.AddObject('標題', TObject(PChar('ID_001')));
TabControl1.Tabs.AddObject('標題', TObject(PChar('ID_002')));
end;procedure TForm1.TabControl1Change(Sender: TObject);
begin
ShowMessage( PChar(TabControl1.Tabs.Objects[TabControl1.TabIndex]) );
end;
回复人: victor_yang(victoryang) ( ) 信誉:98 2004-11-22 8:16:47 得分: 5 ID可以放到每个Tabs的Tag里啊
cronuz(cronus)的回答已经基本给解决了。不过现在出现一个问题,我的ID数据(也就是他上面的ID_001)是从数据库中读出来存到一个变量中,使用他给的方法就不太好用了,请各位给看看,或者有没有其他的解决方案
回复人: cqwty(笨小孩) ( ) 信誉:92 2004-11-20 16:39:36 得分: 5
你的意思没有搞懂啊,如果你使用的标题内容是相同的,那么你自己怎么知道哪一个标题对应的是什么操作呢?你怎么就知道你tabcontroll的id呢?
回复人: spng(Sinpy) ( ) 信誉:100 2004-11-20 16:45:24 得分: 0
是啊,我就要解决这个问题!
不过我进行数据初始化的时候是可以知道的,关键是我不知道应该把ID存储在那里?
回复人: cronuz(cronus) ( ) 信誉:105 2004-11-20 20:47:57 得分: 50
procedure TForm1.FormShow(Sender: TObject);
begin
TabControl1.Tabs.AddObject('標題', TObject(PChar('ID_001')));
TabControl1.Tabs.AddObject('標題', TObject(PChar('ID_002')));
end;procedure TForm1.TabControl1Change(Sender: TObject);
begin
ShowMessage( PChar(TabControl1.Tabs.Objects[TabControl1.TabIndex]) );
end;
回复人: victor_yang(victoryang) ( ) 信誉:98 2004-11-22 8:16:47 得分: 5 ID可以放到每个Tabs的Tag里啊
cronuz(cronus)的回答已经基本给解决了。不过现在出现一个问题,我的ID数据(也就是他上面的ID_001)是从数据库中读出来存到一个变量中,使用他给的方法就不太好用了,请各位给看看,或者有没有其他的解决方案
begin
TabControl1.Tabs.AddObject('標題', TObject(PChar(你的变量)));
TabControl1.Tabs.AddObject('標題', TObject(PChar(你的变量)));
end;
就多了一个变量赋值
也可以直接TabControl1.Tabs.AddObject('標題', TObject(PChar(DataSet.FieldByName('字段').asString)));
如果是int型,转成string型
TabControl1.Tabs.AddObject('標題', TObject(PChar(IntToStr(DataSet.FieldByName('字段').asString))));
planIDstr:= trim(DM.DMQuery['PlanID']);
showmessage(planIDstr);这里可以正确显示数据
Frame_LifePlan1.TabCLifePlan.Tabs.AddObject('ok',TObject(PChar(planIDstr)));点击TAB标签时
procedure TFrame_LifePlan.TabCLifePlanTabActive(Sender: TObject;
TabIndex: Integer);
var
SelectSQL:String;
begin
ShowMessage(PChar(TabCLifePlan.Tabs.Objects[TabIndex]) );
end;结果显示的不是初始化的数据,而且还经常变化。不知道怎么回事????
或者,在tab标题做成ID=Name形式,然后自己来写OnDrawTab事件重绘Tab