取的Combobox中的所选择项的值

guyouwen789

guyouwen789

2016-02-19 12:45

下面是个超简单的取的Combobox中的所选择项的值教程,图老师小编精心挑选推荐,大家行行好,多给几个赞吧,小编吐血跪求~

  有时候我们需要根据combobox(listbox同样)的选择项的值进行处理,但是在delphi中的Combobox的item是一个TStrings类型的对象,我们无法象c#或java中那样从combobox的选项类中继承,创建一个我们需要的类来完成任务。但是仔细研究delphi的combobox对象发现了以下的解决方法:

  新建一个类,存储我们需要的数据:

  TItemEx=class(TObject)      caption:string;
     public
  
        StringValue:string;
  end;

  //使用adoquery中的值填充combobox
  function FillInComBoBoxWithAdoQuery(objAdoQuery:TAdoQuery;objComBoBox:TComboBox;sql:string;captionFieldName:string;valueFieldName:string;noAsFirst:boolean):boolean;

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  //当noAsFirst为true是,combobox的第一项是'无'
  var
    objItemEx:TItemEx;
  begin
    objComBoBox.Clear;
    objComBoBox.ItemIndex:=-1;
    if noAsFirst
    then begin
       objItemEx:=TItemEx.Create;
       objItemEx.caption:='无';
       objItemEx.StringValue:='';
       objComBoBox.Items.AddObject(objItemEx.caption,objItemEx);
       objComBoBox.ItemIndex:=0;
    end;
    objAdoQuery.Close;
    objAdoQuery.SQL.Clear;
    objAdoQuery.SQL.Add(sql);
    objAdoQuery.Open;
    objAdoQuery.First;
    while not objAdoQuery.Eof do
    begin
      objItemEx:=TItemEx.Create;
      objItemEx.caption:=objAdoQuery.FieldByName(captionFieldName).AsString;
      objItemEx.StringValue:=objAdoQuery.FieldByName(valueFieldName).AsString;
      objComBoBox.Items.AddObject(objItemEx.caption,objItemEx);
      objAdoQuery.Next;
    end;
    objAdoQuery.close;
    result:=true;
  end;

  //取得comboobx中被选定向的制
  function GetComBoBoxSelectedStringValue(objComBoBox:TComboBox):string;
  var
    objItemEx:TItemEx;
  begin
    if (objComBoBox.ItemIndex-1 )
    then begin
         objItemEx:=(objComBoBox.Items.Objects[objComBoBox.ItemIndex] as  TItemEx);
         result:=objItemEx.StringValue;
    end
    else begin
         result:='';
    end;
  end;

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  listbox的解决方法与此类似。

  (www.sinoprise.com)

展开更多 50%)
分享

猜你喜欢

取的Combobox中的所选择项的值

编程语言 网络编程
取的Combobox中的所选择项的值

ComboBox的DataValue值

编程语言 网络编程
ComboBox的DataValue值

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

选我所选Photoshop中的快速选择技巧

PS PS教程
选我所选Photoshop中的快速选择技巧

取选中的radio的值

Web开发
取选中的radio的值

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

学会有所选择的拍摄 摄影创作中“放弃”的艺术

摄影技巧 摄影入门 摄影
学会有所选择的拍摄 摄影创作中“放弃”的艺术

学会有所选择的拍摄摄影创作中“放弃”的艺术

摄影
学会有所选择的拍摄摄影创作中“放弃”的艺术

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

在Java中使用枚举

在Java中使用枚举

HTML5 标准将把互联网视频扔回到黑暗时代

HTML5 标准将把互联网视频扔回到黑暗时代
下拉加载更多内容 ↓