当前位置: 首页 > 知识库问答 >
问题:

如何使不可编辑的组合框显示提示文本?

王俊哲
2023-03-14

我有JavaFX控件,可以与许多潜在冲突的值相关联。

当控件是TextField时,我使用提示文本属性将字符串(多个冲突值)放入TextField并使用此处描述的技巧来确保提示文本用户键入该字段之前保持可见。这工作得很好。

现在,我想对<code>组合框</code>做同样的事情,但我发现只有当<code>editable</code>属性设置为<code>true</code>时,<code>组合盒</code>才会显示<code>PrompText</code>。这对我来说是个问题,因为我不希望用户在<code>组合框</code>中键入任意字符串。我想把他限制在一组预定的选择范围内。

有没有办法让ComboBox显示提示文本,即使它的可编辑属性设置为false?扩展ComboBox在我的情况下是一个可接受的解决方案

共有1个答案

须志新
2023-03-14

如果我将 ComboBox 设置为可编辑,然后获取编辑器文本字段)并将其设置为不可编辑,则一切似乎都可以正常工作。

comboBox.setEditable(true)
comboBox.getEditor().setEditable(false)

要在用户更改< code>ComboBox之前保持< code>promptText可见,必须将CSS技巧应用于内部< code>TextField,而不是< code>ComboBox本身。

>

  • 用户无法在ComboBox中键入内容,但看起来他可以:它的样式就像他可以一样,当鼠标光标悬停在ComboBox的编辑器部分上时,它甚至会呈现工字形光束的外观。

    用户必须单击按钮才能展开并查看项目。他不能再单击不可编辑的ComboBox的较大目标区域。

    我见过焦点丢失导致这样的ComboBox生成选定的Item changed事件,并且新值不是最初添加ComboBox.getItems()的对象,而是原始对象的字符串表示形式!似乎可以使用selectedIndex()来解决这个问题。

    最后也是最不重要的:我的ComboBoxsStringConverter开始接收nulls,而之前没有。

  •  类似资料:
    • 我正在尝试使用一个可编辑的组合框。因为我想添加一个用于按回车键的监听器。我尝试了下面的选项,但都不起作用。:( < code>cmb_year是组合框对象。

    • 本文向大家介绍如何使用JavaScript显示提示对话框?,包括了如何使用JavaScript显示提示对话框?的使用技巧和注意事项,需要的朋友参考一下 当您要弹出文本框以获取用户输入时,提示对话框非常有用。因此,它使您可以与用户进行交互。用户需要填写该字段,然后单击“确定”。 使用称为的方法显示此对话框,该方法带有两个参数:(i)您要在文本框中显示的标签,以及(ii)要在文本框中显示的默认字符串。

    • 我正在开发一些学术性的JavaFX桌面应用程序。在创建注册表单时,我需要使用combobox/choicebox,但在这一步中我遇到了几个问题。组合框没有显示任何项目。我尝试了许多在堆栈溢出上找到的修复方法,但似乎都不起作用。我在分享我的主要观点。java控制器代码和我的FXML代码放在一边。 Main.java Controller.java FXML文件

    • 我有一个自定义背景编辑文本。当他们的键盘打开-屏幕调整显示集中编辑文本,问题是,它削减了我的自定义背景。 什么是最好的方式显示我的编辑文本包括他的敲击白背景时,键盘打开? 我的清单现在是调整设置。

    • tagentry – 编辑框下显示tag列表 tagentry用于在编辑框下面列出所有的tag,并带有复选框。 bug修补: tag列表无法显示。 ./action.php.old 2009-09-18 13:32:00.000000000 +0400 +++ ./action.php 2013-05-30 12:29:47.000000000 +0400 @@ -55,7 +55,7 @@

    • 所以我用visualstudio创建了我的网站,而我并没有真正使用wordpress提供的可视化或文本编辑器。例如,现在我已经完成了我的主页,一切都在那里,看起来都很完美,但是当我进入wordpress菜单中页面的视觉/文本编辑器时,它是空白的。如果我安装elementor或其他插件,情况基本相同。如何使内容也显示在页面视觉/文本编辑器中?我知道,当我在wordpress编辑器中写东西时,它直到我