这条语句怎么写呢? ( 积分: 10 )

  • 主题发起人 主题发起人 fuxin198311
  • 开始时间 开始时间
F

fuxin198311

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure Tcust_dengjiForm.FormShow(Sender: TObject);
var i:integer;
begin
combobox2.Items.Clear;
combobox3.Items.Clear;
TLCYGLXT.KT_FJTHXXB.Active:=true ;
with query2 do
begin
close;
sql.Clear ;
sql.Text:='select * from 房间台号类型表';
open;
first;
while not query2.Eof do
begin
combobox2.Items.Add(query2.fieldbyname('类型说明').Value);
query2.Next ;
end;
close;
end;

TLCYGLXT.KT_FJTHXXB.First ;
for i:=1 to TLCYGLXT.KT_FJTHXXB.RecordCount-1 do
begin
combobox3.Items.Add(TLCYGLXT.KT_FJTHXXB.FieldValues ['房台名称']);
TLCYGLXT.KT_FJTHXXB.Next ;
end;
end;
上面是我的代码,组合框中已有数据了,但发现不妥, 我想就是通过combobox的值去判断 然后在combobox3显示相应的值
如 类型说明:大包房,小包房
房间名称:灵江,福星(大包房)
富丽,星福(小包房)
若我在combobox2中选取的是‘大包房’则在combobox3中显示‘灵江,福星’
谢了
 
数据是从后台读的吗?
1.你的后台数据要做好对应关系!
2.在combobox2的click事件中添加'向combobox3里添加数据的代码!'
 
两个表都有’类型说明‘这个字段
 
可是你刚提供的代码是只有一张表的数据嘛!
如果要加请把这代码改下!
TLCYGLXT.KT_FJTHXXB.First ;
for i:=1 to TLCYGLXT.KT_FJTHXXB.RecordCount-1 do
begin
combobox3.Items.Add(TLCYGLXT.KT_FJTHXXB.FieldValues ['房台名称']);
TLCYGLXT.KT_FJTHXXB.Next ;
end;
在前面加个SQL并取数据!然后再新的数据集里面添加‘房台名称’!
不过那代码还要写在combobox2的click事件里面!
 
nnpxxiao
还是不懂呀
 
其实思路很简单,你在combobox2的keypress事件中添加事件,就像你上面写的那样,通过sql来选择你需要的信息,判断条件就是根据你选择的combobox2的值
 
procedure Tcust_dengjiForm.ComboBox2Change(Sender: TObject);
begin
combobox3.Items.Clear ;
with query1 do
begin
close;
sql.Clear ;
sql.Text:='select * from 房间台号信息表, 房间台号类型表 where 房间台号信息表.类型说明=房间台号类型表.类型说明' ;
open;
first;
while not query1.Eof do
begin
combobox3.Items.Add(query1.fieldbyname('房台名称').Value) ;
query1.Next ;
end;
close;
end;
end;
我这样写还是combobox3的值不能根据combobox2的值判断显示相应对应的值呢
 
可以了吧~~呵呵 昨天有点早就走了!
 
最好做个视图.
 
后退
顶部