【问题标题】:How can I clear the focus from a desensitized GtkWidget - GtkSpinButton with property sensitive = false如何从脱敏的 GtkWidget 中清除焦点 - GtkSpinButton 属性敏感 = false
【发布时间】:2016-07-15 05:04:18
【问题描述】:

背景:我在GtkNotebook 中设置了几个选项卡,当在主选项卡上满足某些条件时,“测试信号”选项卡中的输入字段将相应禁用。

GtkSpinButton 中的输入在“测试信号”选项卡上突出显示并且GtkSpinButton 的属性sensitive 设置为false 时,GtkSpinButton 中的文本仍然突出显示。因为有时此选项卡上没有其他可编辑字段,所以文本保持突出显示,直到另一个小部件将其属性 sensitive 设置为 true

这对我来说看起来很草率,所以我想停止这种行为并将设置为 sensitive = false 的小部件全部清除焦点或突出显示。知道如何在设置sensitive = false 之前取消突出显示GtkSpinButton 中的文本吗?

【问题讨论】:

  • gtk_editable_select_region()
  • 就是这样,将旋转按钮投射到 GtkEditable 并从 0 到 0 选择。非常感谢,如果你把它扔在那里作为答案,我会把它标记为答案。跨度>

标签: c++ gtk


【解决方案1】:

要摆脱选择,您可以使用gtk_editable_select_region() 函数。这是 GtkEditable 上的一个方法,一个 GtkEntry 和 GtkSpinButton 都满足的接口。您可以使用GTK_EDITABLE() 将其中任何一个转换为 GtkEditable。例如:

gtk_editable_select_region(GTK_EDITABLE(spinbutton), 0, 0);

【讨论】:

    猜你喜欢
    • 2019-12-09
    • 2010-12-26
    • 1970-01-01
    • 2011-06-02
    • 2019-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-12
    相关资源
    最近更新 更多