delphi中的combobox问题

author author     2023-05-11     416

关键词:

我调用下面的函数是为了清空控件中的text,但是当设置了ComboBox的style属性csDropDownList时,无法清空ComboBox中的text。但ComboBox的style属性设置为csDropDown时就可以清空text中的值,但是这样就可以修改ComboBox的值了,请问如何解决这个问题。谢谢了。
procedure TF_Growing.CLS;
begin
ComboBox1.Text:='';
Edit2.Text:='';
Edit3.Text:='';
Edit4.Text:='';
Edit5.Text:='';
ComboBox2.Text:='';
Edit6.Text:='';
Edit7.Text:='';
Edit8.Text:='';
Edit9.Text:='';
Edit10.Text:='';
Edit11.Text:='';
ComboBox3.Text:='';
ComboBox4.Text:='';
ComboBox6.Text:='';
ComboBox7.Text:='';
ComboBox11.Text:='';
ComboBox5.Text:='';
ComboBox10.Text:='';
ComboBox8.Text:='';
ComboBox9.Text:='';
end;

参考技术A 当ComboBox的style属性csDropDownList时,设置其itemindex为-1,就会清除显示了。
再,你的过程写得比较繁琐,帮你改了一下,以供你参考。

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to self.ComponentCount-1 do
begin
if self.Components[i] is TEdit then
begin
TEdit(self.Components[i]).Clear;
end;
if self.Components[i] is TComboBox then
begin
if TComboBox(self.Components[i]).Style=csDropDown then
begin
TComboBox(self.Components[i]).Clear;
end
else if TComboBox(self.Components[i]).Style=csDropDownList then
begin
TComboBox(self.Components[i]).Style:=csDropDown;
TComboBox(self.Components[i]).ItemIndex:=-1;
TComboBox(self.Components[i]).Style:=csDropDownList;
end;
end;
end;
end;

程序delphi7环境下测试通过。思路是处理的时候先判断combobox的style属性,然后相应的作出改变,处理完后还原其属性设置。
参考技术B 我也对这个Combobox控件很头疼,很多问题,比如用代码写选中了某一项,或这是你这个,都不行,最后我想了一个办法,方法如下
在Combobox上添加一个Panel,大小要和它一样,的留出按钮的位置,把Panel的Enabled设为False,在Combobox的Change事件里,写上Panel1.Caption:=Combobox1.Text,就可以了,如果想清空,只需清除Panel1就可以了,我就是用这个方法的,你可以试试看~~~本回答被提问者采纳
参考技术C 变通以下,可以考虑style属性设置为csDropDown下不让用户修改Combobox的值,在Combobox的ComboBoxKeyPress事件下写key:=#0;这样你可以清空text值,也可以不让用户修改combobox的值 参考技术D 用csDropDownList意思是必选的,不用清空,把item.index重置默认的即可

delphi中的combobox组件的使用?

...件,设置固定的下拉选项,比如:ABCDE五个!怎么设置?ComboBox组件可以吗?还有其他组件吗?请详细回答!三项操作:(括号内为多行文本)1.对象属性中的“Items”设置成ABCDE2.对象属性中的“Style”设置成csDropDownList3.对象... 查看详情

delphi中的adoquery动态连接adoconnection出错

...rue;exceptresult:=falseend;end;参考技术A给你一个思路:设置一个ComboBox1,用来显示你所有的数据库.一个ComboBox2用来显示连接的数据库中的所有表.(使用ADOConnection控件实现.ComboBox1中的数据库名要带有完整的路径)//动态配置数据源ConnStr:=... 查看详情

delphi下拉框问题

...框里的text内容设置itemindex(默认选项),我用ombobox.itemidex:=combobox.Items.indexof(combobox.text)。就是不行,打印combobox.Items.indexof(combobox.text)总是-1,请大家帮帮忙!那一定是你combobox.text没有包含在下拉列表数据那里,你是否有用combobox.ite... 查看详情

delphi中combobox控件怎么显示所选择选项

我用LISTBOX中的属性selected[]布尔数组,但在COMBOBOX中却不可用参考技术A用TComboBox的ItemIndex属性,比如:选择第一条用:ComboBox1.ItemIndex:=0;ifComboBox1.ItemIndex=1则表示:选择的是第2条。默认为:-1,表示没有选中的项目。 查看详情

新手:delphi中combobox下拉框问题

我在combobox下拉中设置了张三,李四,赵武,王六,孙八五个人名,我现在的意思是,我点击combobox按钮,如果选择了张三就弹出一个窗体,选中李四则弹出另外一个窗体,依次类推,怎么去实现。本人新手,最好给出简单的实... 查看详情

delphi如何向combobox的items里添加内容?

...处直接输入内容而是通过程序输入内容。即:已知:一个combobox控件,一个button控件。有两项标题需要注入combobox的items属性中(程序运行后点击该控件的下拉菜单)。点击button控件,如何实现。从问题描述来看,推测可能是ComboB... 查看详情

delphi中combobox与数据库和edit连接的问题

我要做个通讯录。有两个ComboBox,8个EDIT第一个COMBOBOX里输入QQ,编号,地址,电话,电子邮件,生日,姓名第二个COMBOBOX里显示子项目,然后选择分别显示在8个EDIT里比如,选择第一个COMBOBOX里选择姓名,第二个选择再某某。然后E... 查看详情

Delphi ComboBox 对组合框的访问冲突

】DelphiComboBox对组合框的访问冲突【英文标题】:DelphiComboBoxAccessviolationoncombobox【发布时间】:2015-05-1807:52:26【问题描述】:我收到访问冲突错误,但我知道代码是正确的,那么问题可能出在哪里?我正在尝试从本地AccessDB填充Co... 查看详情

输入时如何填充 ComboBox?

】输入时如何填充ComboBox?【英文标题】:HowtofillComboBoxwhileyouaretypinginit?【发布时间】:2018-10-1307:28:32【问题描述】:我正在尝试在您输入TComboBox时完成搜索,并在我输入时自动添加项目。我使用Delphi7和MSSQL。假设我有一张长表... 查看详情

delphi之combobox

 手动添加数据到ComboBoxjcsqueryResult.First;whilenotjcsdqryvehiclebydriverid.Eofdo//从TJsonClientDataSet中取出数据,存到ComboBox中beginv:=Vehicle.Create();//这个类有vehicleno和id2个属性。v.vehicleno:=jcsqueryResult.FieldB 查看详情

防止绕过 ComboBox 中的 SelectedIndexChanged

】防止绕过ComboBox中的SelectedIndexChanged【英文标题】:PreventbypassingSelectedIndexChangedinComboBox【发布时间】:2021-08-2517:50:37【问题描述】:我很惊讶,ComboBox和ComboBox.DropDownStyle=System.Windows.Forms.ComboBoxStyle.DropDownList上的SelectedIndexC 查看详情

Windows 10 中的 XAML ComboBox 选定项背景颜色

】Windows10中的XAMLComboBox选定项背景颜色【英文标题】:XAMLComboBoxSelectedItemBackgroundColorinWindows10【发布时间】:2017-07-0605:06:16【问题描述】:我对WPF和XAML比较陌生,并且在Windows10中遇到了ComboBox和背景颜色的问题。我创建了一个Comb... 查看详情

清除 DataGridView 中的 ComboBox 文本

】清除DataGridView中的ComboBox文本【英文标题】:ClearComboBoxtextinDataGridView【发布时间】:2013-08-0704:27:18【问题描述】:我在DataGridView(DataGridViewComboBox)中有2个ComboBox,比如说TypeComboBox("TypeI"&"TypeII")和OptionsComboBox。DataGridView和TypeCom 查看详情

delphi如何向combobox的items里添加内容?

即:已知:一个combobox控件,一个button控件。有两项标题需要注入combobox的items属性中(程序运行后点击该控件的下拉菜单)。参考技术A在button1的单击事件中添加combobox1.items.add(你要添加的字符串1);combobox1.items.add(你要添加的字符... 查看详情

如何在 wpf 中隐藏 ComboBox 中的文本

】如何在wpf中隐藏ComboBox中的文本【英文标题】:HowtohidethetextfromComboBoxinwpf【发布时间】:2021-02-2518:12:28【问题描述】:我想从ComboBox中获得下拉菜单并绑定SelectedItem,但不想在组合框中显示所选项目。因此,无论选择什么项目... 查看详情

DisplayMemberPath 中的 ComboBox 嵌套属性

】DisplayMemberPath中的ComboBox嵌套属性【英文标题】:ComboBoxnestedpropertiesinDisplayMemberPath【发布时间】:2022-01-0817:54:52【问题描述】:我试图理解为什么会这样:<ComboBoxName="cboServer"HorizontalAlignment="Left"ItemsSource="BindingServer.Connections"D 查看详情

delphi内combobox用法。

...不出来,请高手帮忙看一下哪里有错误?procedureTfrm_main.ComboBox1Change(Sender:TObject);vari:Integer;beginComboBox1.Clear;ComboBox1.SetFocus;withADOQuery1dobeginClose;SQL.Clear;SQL.Add('selectcnofromc');Open;ifRecordCount>0thenfori:=0toRecordCount-1dobeginComboBox1.Items.... 查看详情

在 MS Access 中使用 VBA 查看 Combobox 中的唯一值

】在MSAccess中使用VBA查看Combobox中的唯一值【英文标题】:viewuniquevaluesinComboboxusingVBAinMSAccess【发布时间】:2019-12-0408:29:05【问题描述】:请阅读我的问题以结束,因为我在***中测试了所有以前的解决方案并且没有答案。我正在尝... 查看详情