回 帖 发 新 帖 刷新版面

主题:delphi 求comcombox 一行显示两个字段值

有张表stu(学号,姓名)
     学号   姓名
    001     张三
    002     李四
form上有adoquery1,combobox1,  adoquery1已经与数据连接
 下面是combobox对单个字段取值
 var i:integer;
   begin
       with adoquery1 do 
        begin
          close;
           sql.clear
          sql.add('selcet 姓名 from stu');
         open;
         for i:=1 to recordcount do
            begin
              combobox1.items.add(fieldbyname('姓名').asstring);
               next;
            end;
   end;
end;

运行后 combobox1中两个选项  张三
                            李四



求助

现在我想实现combobox1中两个选项是:
    001     张三
    002     李四

请大侠们指教下。。

回复列表 (共3个回复)

沙发

var i:integer;
vaar a,b,c:string;
   begin
       with adoquery1 do 
        begin
          close;
           sql.clear
          sql.add('selcet 姓名 from stu');
         open;
         for i:=1 to recordcount do
            a:=fieldbyname('学号').asstring;
            b:=fieldbyname('姓名').asstring;
            c:=concat(a,'        ',b); //此处是将学号和姓名字符连接成一个字符串,
            begin
              combobox1.items.add(c);
               next;
            end;
   end;
end;


板凳

sql.add('selcet 姓名 from stu');

改为sql.add('selcet * from stu');

3 楼

谢谢 bgdxlhb  帮我解决了这个问题

我来回复

您尚未登录,请登录后再回复。点此登录或注册