构建更优输入组件与连接现实世界的软件系统
1. 优化输入组件
在现有的程序中,用户需要在 JTextField 中输入文本来回答问题,然而大多数图形用户界面(GUI)并非如此操作。例如,用户更习惯从组合框中选择选项,而非直接输入“x86”或“Macintosh”。
问题事实模板中有一个名为 type 的插槽,它表明了每个问题期望的答案类型。根据这个 type 字段的值,界面应显示不同的用户输入面板,主要有以下两种:
- 多项选择 :带有弹出菜单(组合框)的面板,其中包含一系列选项。
- 数字输入 :接受数字输入的文本字段。
可以修改 ask 模块以满足这一需求,更改 ask-user 函数,使其根据问题类型为每个问题设置合适的输入组件。对于数字答案的问题,使用现有的 JTextField ;对于多项选择问题,使用新的 JComboBox 。
以下是设置 JComboBox 及其关联的“OK”按钮的代码:
(defglobal ?*acombo* = (new JComboBox (create$ "yes" "no")))
(defglobal ?*acombo-ok* = (new JButton OK))
(deffunction combo-inp
优化输入组件与构建HVAC控制器系统
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



