问题标签 [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.

0 投票
1 回答
2223 浏览

delphi - Delphi,鼠标离开时如何关闭TComboBox?

我正在尝试实现以下功能:

  1. 当鼠标经过组合框时,它会自动打开。
  2. 当鼠标离开组合框区域(不仅是组合,还有下拉列表)时,它会自动关闭。

第一点很简单:

但是,第二点,我做不到。我试过了:

但是当鼠标在组合框上时,它的行为很奇怪,出现和消失,变得无法使用。

我尝试了 AutoCloseUp 属性,但没有结果。现在我没有想法,谷歌也无能为力。

有人可以指出我正确的方向吗?

0 投票
0 回答
69 浏览

firemonkey - Delphi Firemonkey XE8 TComboBox 正在展开并在几秒钟后关闭

TComboBox我以编程方式构建所有字段,

一切正常,只有一个例外。

在一个面板TComboBox-fields中,单击后立即关闭所有面板。

它们只展开几秒钟......

这可能是什么原因?我找不到与其他面板的任何差异。

0 投票
1 回答
477 浏览

delphi - 当 BiDiMode= bdRightToLeft 和 Style= csDropDownList 并且应用程序使用 VCL 样式时,TComboBoxEx 项目未正确绘制

在此处输入图像描述 在此处输入图像描述

你好。

当 BiDiMode= bdRightToLeft 和 Style= csDropDownList 并且应用程序使用 VCL 样式时,TComboBoxEx 项目未正确绘制;在下拉列表中,左侧绘制的图标和文本在选择项目时,左侧绘制的图标和文本将消失!

在 Delphi XE2 中看到了从右到左的 ComboBox 样式,但没有帮助我。

我应该怎么做才能更正它并在 ComboBoxEx 的右侧绘制图标和文本(第一个图标和下一个,文本)?

这正是我所需要的,我用 Photoshop 设计了这个示例:

在此处输入图像描述

我用德尔福 XE8

请帮助我。

0 投票
1 回答
630 浏览

c++ - C++ Builder 派生的 TComboBox 默认具有 Items

这里是VCL组件新手,如果这是一个愚蠢的问题,请原谅我......

我正在尝试制作一个包含默认项目的 TComboBox 组件,然后将其拖放到表单上,即一个 TMonthComboBox,当拖放到表单上时,它将在其项目列表中包含月份列表。

我发现,如果我尝试在表单上删除此类组合框,则在构造期间尝试访问 Items 属性将导致“控件”没有父窗口“错误。

这是构造函数的(部分):

我认为问题源于 Items 属性在构造的此时尚不可用的事实。

无论如何要确保组件已准备好在组件源代码本身内将值接受到其 Items 属性中(即在设计时不在属性编辑器中添加列表项)?

在有人告诉我“只需在运行时添加应用程序代码中的项目”之前,我必须解释一下,这个 ComboBox 将在很多地方非常频繁地使用,而月份选择只是我用来解释问题的一个简单示例,我想放在 ComboBox 中的实际值更加多样化,而且大多数时候都是动态的。它还必须以各种方式响应用户的选择。

我已经尝试过运行时的方式,但它变得非常乏味。这就是我将它制作成一个组件的原因,这样它就可以自行处理,而无需我重复输入多个版本的代码来填充组合框。

谢谢你的帮助。

编辑:在尝试了 manlio 的解决方案后,ComboBox 在运行时看起来很奇怪:在此处输入图像描述

ComboBox 在运行时具有双图像。我做错了什么?

0 投票
2 回答
813 浏览

delphi - LookupSource 必须连接到 TTable 组件

我正在尝试使用 TDBLookupCombo,但收到错误消息“带有消息‘LookupSource 必须连接到 TTable 组件’的 EInvalidOperation。

我将 TDBLookupCombo.LookupSource 连接到 TDataSource。TDataSource.Dataset 指向一个 TClientDataSet,其中包含查找表的记录(字段 ID 和描述)。

由于 TClentDataSet 不是 TTable 的后代,这是不可能的吗?如果是这样,那么不使用 3rd 方组件的最佳选择是什么。

0 投票
1 回答
979 浏览

delphi - 使用 ownerdraw 样式时,Delphi Seattle TCombobox Dropdowncount 不起作用

TComboBox在西雅图德尔福有一个业主自画的,它忽略了该DropDownCount物业的任何设置。单个项目的高度为 59 像素,宽度为 311 像素。我在字符串列表中有 5 个条目Items。将值设置为低于 8 会导致根本不显示下拉菜单,而任何更高的值都会导致下拉菜单中仅显示 1 个项目以及垂直滚动条。我需要能够在下拉列表的项目列表中显示所有 5 个条目。

这是重现问题的 DFM:

这是 PAS 文件:

0 投票
0 回答
532 浏览

delphi - Delphi TComboBox 取消选择

我的表单上有delphi TComboBox 控件。它在每一行都有元素按钮,单击该按钮会显示一个包含项目信息的新表单。我需要做的是,当单击按钮时,它不应该更改以前选择的项目。现在我只是恢复选定的项目,这不是一个好的解决方案。我需要覆盖任何事件吗?

谢谢

0 投票
1 回答
118 浏览

c++builder - 计算在 C++ Builder 中选择 ComboBox 项的次数

我需要你的帮助来解决我的问题。

我有一个包含 2 个项目的 ComboBox:StackExchangeStackOverflow.

我想知道如何计算StackOverflow项目被选中的次数并将结果放入消息框中。

谢谢并恭祝安康。

0 投票
1 回答
173 浏览

c++ - 在运行时创建 TCombobox 的更快方法

我想在运行时用许多具有相同列表的组合框填写表单。它们还获得相同的事件处理程序,该处理程序根据Sender对象的名称进行操作。但是,这需要很长时间,我猜我做错了什么。

我正在使用 XE2 Rad Studio C++ Builder 和 VCL GUI。

编辑:这些框包含不同类型的内容,并分布在表单中的几个 tabPages 上。但是,有必要一目了然地显示它选择的至少 80 个。在单击 TLabel 以选择不同的元素时,用 TLabels 替换它们并创建一个 TCombobox 会更好吗?

代码看起来与此类似:

在我的机器上进行一次迭代似乎需要大约 20 毫秒(用 测试过std::clock),这使得这部分大约需要 10 秒。指针在表单销毁时被删除。我只是把他们的声明放在这里为了简化。

有没有更好的方法来创建多个组合框?也许克隆它们?

0 投票
0 回答
919 浏览

delphi - 在 Delphi 10.1 Berlin 中使用 firemonkey 样式时,TComboBox 列表不会下拉

我在 Delphi 10.1 Berlin 中的 FMX TComboBox 组件有问题(我在早期的 XE 版本中也看到过)。问题是这样的。

我创建了一个新的多平台项目,将一个 TComboBox 放在一个空表单上,向 TComboBox.Items 添加一些项目,就像您在 VCL 中所做的一样(这是 FMX)。运行它并单击 TComboBox 的按钮,项目将按应有的方式显示在下拉列表中。

接下来,我将 TStyleBook 放在表单上,​​将表单与 StyleBook 链接,并从 Delphi 10.1 Berlin 附带的 Premium firemonkey 样式中加载 Copper .style。

现在,当我运行应用程序时,当我单击下拉按钮时,组合框的项目不会显示。但我可以使用向上和向下箭头键选择项目。如果我清除样式,组合框将再次起作用。

所以,显然风格有问题(尝试过其他具有相同效果的)或者我错过了一些东西。

(我也尝试使用右键菜单中的 Add TListBoxItem ,但问题仍然存在)。