问题标签 [tcombobox]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 在 Delphi RAD Studio 10 中获取 TCombobox 的选定值
如何从 a 中获取选定的值TComboBox
?
名字TCombobox
是comboTest
python - Tkinter Combobox 只显示最后一项
我正在尝试使用 Tkinter 在 python 应用程序中实现一个组合框。主要目的是显示连接到计算机的 COM 设备(使用 Arduino 和 micro:bit 测试)。一些笔记本电脑也会显示很多 COM 端口。我还使用了一个列表框进行调试 - 在这部分看起来很好。
我的代码:(对不起,它有点大,因为我是在 PAGE 上制作的。
感谢我使用 Python 3.7 的任何帮助,但我也在 2.7 中进行了测试。
谢谢!
return-value - Borland C++ TComboBox
如果我的 Borland C++ 6 和表单有问题。
在我的项目中,我有一个插入到 TComboBox 的组成员列表。到目前为止,一切都很好。现在,当我更改此 TComboBox 中的条目时,我想访问其中的对象。现在问题来了:
Box1->Items->Strings[Box1->ItemIndex]返回我选择的人的字符串。但是当我想访问 Box1 中的对象时
Box1->Items->Objects[Box1->ItemIndex]这将始终返回 NULL...
在项目的最后一个版本中,它运行良好。我检查了每一个对象,每一个 SQL,我能想到的一切。但是 TComboBox 的上下文没有任何变化,因此这将不再像以前那样返回任何内容......
你们知道这里可能出了什么问题吗?...
delphi - 将 TComboBox.DroppedDown 设置为 true 时,如何防止鼠标光标消失?
在 Delphi 2007 中,我试图强制 TComboBox 下拉,但是当我这样做时,当控件正在编辑并且鼠标悬停在表单上时,鼠标光标会消失。在阅读了关于使用 TComboBox 实现过滤器功能的 SO答案后,我想到了这个想法。
展示行为。
- 运行下面的示例代码(到 2007 年可能需要时间机器)
- 单击组合框
- 开始打字。
在示例代码中,您可以看到我尝试过的两种解决方法,但都没有成功。
可以克服消失的光标吗?
一个替代的免费控件/组件也受到欢迎,它实现了在键入时过滤列表的相同目标。我需要根据项目中是否包含文本来过滤项目,因此自动完成路由似乎不是一个选项。
干杯,
delphi - 如何在自定义样式的所有者绘制 TComboBox 中检测 ODS_COMBOBOXEDIT
使用德尔福 10.3:
在带有 的所有者绘制TComboBox
中Style=csOwnerDrawFixed
,我希望 DropDown 列表中所有者绘制的项目与组合的静态部分不同。为了区分这两种情况,我检查odComboBoxEdit
了State
参数,如下所述:
只要没有自定义 VCL 样式处于活动状态,它就可以很好地工作。但是,对于自定义样式,这不再可靠。检查源代码,在Vcl.StdCtrls.pas
我TComboBoxStyleHook
看来,原因在于以下组合:
当没有编辑句柄时(就是 的情况csOwnerDrawFixed
),DrawItem()
组装一个TDrawItemStruct
永远不会包含ODS_COMBOBOXEDIT
的 ,因此CN_DRAWITEM
处理程序永远不会odComboBoxEdit
设置。
我可以覆盖TComboBoxStyleHook
,但我需要一种方法来检测该项目是静态项目还是列表中的项目。
作为一种解决方法,我检查了Combo.DroppedDown
,但这并不相同:即使下拉,我希望静态部分的绘制方式与列表中的项目不同。
所以问题是,我如何(在自定义绘制处理程序或样式挂钩中)检测到自定义绘制项是静态区域而不是列表中的项?
delphi - 带有 CharCase ecLowerCase 或 ecUpperCase 的异常“无法插入一行”TComboBox
在Delphi 10.3.2中,当我以编程方式在具有“CharCase = ecLowerCase”(或 ecUpperCase)的 TComboBox 中插入项目时,我收到错误
Project XXXX raise exception class EOutOfResources with message 'Unable to insert a line'
只有当我将单元SHAREMEM添加到我的项目中(我需要引用该单元,因为我必须与 DLL 交换动态字符串)。
似乎该错误与我在过程 TComboBoxStrings.Add() (unit StdCtrls.pas) 中找到的此注释有关:来自 Windows SDK 文档:Comclt32.dll 版本 5.0 或更高版本:如果设置了 CBS_LOWERCASE 或 CBS_UPPERCASE,则 Unicode CB_ADDSTRING 的版本会改变字符串。如果使用只读全局内存,这会导致应用程序失败。
有解决方法吗?提前致谢。
delphi - Livebindings 2个组合框之间的主细节关系,反之亦然选择
我正在尝试在具有主从关系的 2 个 tcombobox 之间使用 livebindings 功能。两个 tcombobox 都连接到各自的数据集。说,我有一个客户名称表和工作表。两个表都在运行时填充到各自的 tcomboboxes。
到目前为止,在选择客户(主)tcombobox 时,我对单向填充作业(详细信息)没有任何问题。
On the other hand, I want the tcombobox-jobs (detail), when a value is selected, automatically selects the customer (master).
有没有办法可以用活绑定来做到这一点?
我尝试了一些实时绑定设置,但出现错误。
我对实时绑定还不是很熟悉(这在后端是如何工作的)。我将不胜感激。
只是想让你知道,我已经尝试过事件来处理这个但没有成功。我现在倾向于使用实时绑定来处理这个小功能。
delphi - 我在新创建的带有 TComboBox 祖先的组件上收到错误“未声明的标识符”
我使用向导创建了一个带有 TComboBox 祖先的新组件。从编译、构建和安装,一切都很顺利。现在我尝试使用它,但出现以下错误:
用于新组件实施的 MRE
用于新组件安装程序包的 MRE
我确定某事,某处我失踪了。