如何自定义gtk窗口标题栏。我需要添加自定义按钮和标题栏图像。
答案 0 :(得分:2)
你做不到。标题栏由窗口管理器绘制,而不是由GTK绘制。您可以告诉窗口管理器使用window.set_title()
设置标题,您可以使用window.set_icon()
,window.set_icon_name()
或者设置窗口管理器可能显示或不显示的图标,或者window.set_icon_from_file()
。就是这样。
答案 1 :(得分:1)
从 GTK 3.10 开始,您可以使用 gtk_window_set_titlebar
gtk_window_set_titlebar (GtkWindow *window, GtkWidget *titlebar)
如您所见,您需要的唯一参数是您要自定义的窗口和用作标题栏的 GtkWidget。 GTK 开发人员建议使用 GtkHeaderBar,因为它提供了一些您期望从标题栏获得的功能,例如开箱即用的关闭窗口按钮,但您可以自由使用任何其他 GtkWidget。
答案 2 :(得分:0)
这是一个有效的解决方案:
#include <gtk/gtk.h>
int main(int argc, char *argv[]) {
GtkWidget *window;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window), "UV with Y variable");
gtk_widget_show_all(window);
gtk_main();
return 0;
}