取的Combobox中的所选择项的值

原创 2004年07月21日 16:00:00

有时候我们需要根据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;

//当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;

listbox的解决方法与此类似。

www.sinoprise.com

jquery 获取easyui combobox选中的值

$('#comboboxlist').combobox('getText');  只能所有选中的值对 $('#comboboxlist').combobox('getValue'); 只能获取一个...
  • u012012537
  • u012012537
  • 2016-09-26 14:05:23
  • 7114

【Python】【PyQt】ComboBox

http://blog.sina.com.cn/s/blog_9b78c9110101d9ka.html 设定值: ____________________________...
  • winnie8829
  • winnie8829
  • 2016-12-23 17:08:49
  • 4694

combobox实现下拉框及其值的获取

combobox实现下拉框及其值的获取
  • qq_36411874
  • qq_36411874
  • 2017-08-23 08:57:00
  • 483

ComboBox 控件绑定数据和获取选中的数据

==>将所有数据添加到ComboBox控件中(这里以SetialPort串口个数为例)    private void AddSerialPosts()         {           ...
  • memgxingfeixiang
  • memgxingfeixiang
  • 2016-09-12 10:58:45
  • 1537

Tkinter的下拉列表Combobox

tk中下拉列表使用ttk.Combobox,代码如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import tkinter as tk fr...
  • u010159842
  • u010159842
  • 2016-11-22 16:12:09
  • 7609

Python 窗体(tkinter)下拉列表框(Combobox)

import tkinter from tkinter import ttk def go(*args): #处理事件,*args表示可变参数 print(comboxlist.ge...
  • houyanhua1
  • houyanhua1
  • 2017-10-08 11:56:38
  • 3683

easyui combobox设置选中

  • zjsqfq
  • zjsqfq
  • 2014-05-29 16:19:15
  • 44828

关于easyUI的combbobox下拉框多选时,后台获取下拉框的值获取的问题

在使用easyUI的combobox时,当参数里设置为multiple:true时,下拉框可以选择多个, js代码 $('#cc').combobox({ panelHeight:'auto...
  • jianke221
  • jianke221
  • 2016-03-25 16:54:34
  • 5691

根据combobox选择的index来获取值

((DataRowView)comboBox1.Items[0]).Row[0].ToString();
  • hutao1101175783
  • hutao1101175783
  • 2014-03-15 10:04:50
  • 1571
收藏助手
不良信息举报
您举报文章:取的Combobox中的所选择项的值
举报原因:
原因补充:

(最多只允许输入30个字)