gpt4 book ai didi

c++ - 小部件不在 Gtk 窗口内

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:47:20 26 4
gpt4 key购买 nike

我正在尝试将一个按钮设置为程序中的默认按钮,以便在输入框中输入数据后,用户只需按回车键即可继续,而不是笨拙地向上拖动鼠标或按 Tab 键。

我的代码是:

gtk_entry_set_activates_default(__w_passwdEntry, true);
gtk_entry_set_activates_default(__w_uNameEntry, true);
gtk_widget_set_can_default(GTK_WIDGET(__w_loginBtn), true);
gtk_widget_grab_default(GTK_WIDGET(__w_loginBtn));

最后一行出现错误,错误内容为:

(app_name:2345): Gtk-WARNING **: gtkwidget.c:6796: widget not within a GtkWindow

如何将按钮与窗口相关联?那以及我如何确定我需要将按钮与之关联的窗口是什么?

我在 Glade 中创建了 GUI 的基础知识,并且我正在努力做除了代码布局之外的所有事情。

最佳答案

找到答案,使用链接到“激活”的 g_signal_connect:

g_signal_connect(__w_uNameEntry, "activate", G_CALLBACK(*credentialsCheck), NULL);
g_signal_connect(__w_passwdEntry, "activate", G_CALLBACK(*credentialsCheck), NULL);

其中 credentialsCheck() 是链接到登录按钮回调的函数。因此,这不是一个完美的解决方案,但目前可以使用。

关于c++ - 小部件不在 Gtk 窗口内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35658717/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com