【问题标题】:GTK+ MenuItem Size SmallGTK+ 菜单项大小小
【发布时间】:2016-12-10 06:02:16
【问题描述】:

在运行 Windows 的机器上,MenuItems 对于我的用例来说太小了。

因此,我的问题是,“如何增加文本“保存”、“加载”和“退出”的字体大小?

如果不是,那么 如何增加 MenuItem 之间的填充?
(没有添加更多在“加载”和“退出”之间看到的行分隔符)

另外,如果可能的话,如何删除中间变量SubMenu1


截屏



以下是完整的复制源:

#include <gtk/gtk.h>

int main (int argc, char *argv[]) {
    gtk_init (&argc, &argv);


    GtkWidget* Window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

    GtkWidget* MenuBar = gtk_menu_bar_new();
    GtkWidget* MenuItem_File = gtk_menu_item_new_with_mnemonic("_File");

    GtkWidget* SubMenu1 = gtk_menu_new();

    GtkWidget* Item_Save = gtk_menu_item_new_with_mnemonic("_Save");
    GtkWidget* Item_Load = gtk_menu_item_new_with_mnemonic("_Load");
    GtkWidget* Item_Exit = gtk_menu_item_new_with_mnemonic("_Exit");


    gtk_menu_shell_append(GTK_MENU_SHELL(SubMenu1), Item_Save);
    gtk_menu_shell_append(GTK_MENU_SHELL(SubMenu1), Item_Load);

    gtk_menu_shell_append(GTK_MENU_SHELL(SubMenu1), gtk_separator_menu_item_new());

    gtk_menu_shell_append(GTK_MENU_SHELL(SubMenu1), Item_Exit);


    gtk_menu_item_set_submenu(GTK_MENU_ITEM(MenuItem_File), SubMenu1);
    gtk_menu_shell_append(GTK_MENU_SHELL(MenuBar), MenuItem_File);


    GtkWidget* VerticalBox;

    VerticalBox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);

    gtk_box_pack_start(GTK_BOX(VerticalBox), MenuBar, false, false, 0);
    gtk_container_add(GTK_CONTAINER(Window), VerticalBox);


    gtk_widget_show_all(MenuBar);
    gtk_widget_show(VerticalBox);


    gtk_window_set_default_size(GTK_WINDOW(Window), 950, 600);
    gtk_window_set_position(GTK_WINDOW(Window), GTK_WIN_POS_CENTER);
    gtk_window_set_title(GTK_WINDOW(Window), "My Title");

    gtk_widget_show(Window);


    gtk_main();

    return 0;
}

【问题讨论】:

    标签: menuitem font-size gtk3


    【解决方案1】:

    Gtk3 的字体大小控制(和其他样式属性)被委托给 CSS 文件。通常不鼓励在你的程序中这样做(尽管这当然是可能的——看看 Gtk3 的 CSS_provider 函数)。但我怀疑,通常你希望你的程序看起来与其他程序“兼容”。

    原因是您的程序的方面应该可以从外部控制 - 无论是出于个人品味的原因,还是出于可访问性的原因。因此,如果您认为菜单等的字体样式太小,您可以:

    • 选择另一个“主题”或样式,例如。在Gnome-Look site
    • 查看窗口管理器的“外观”设置首选项(在 XFCE 中调用它。在 Gnome、KDE ​​等中有类似的工具)
    • 修改当前使用的主题的 CSS 文件

    许多其他视觉方面都由 CSS 文件控制:元素之间的分离(例如菜单项)、圆角、视觉效果等……但是,由于 CSS 系统,您通常可以“调整”你喜欢的东西。

    编辑:如果你想在另一台机器上运行可执行文件,你可能需要一个窗口管理器来运行它,这使得上面仍然有效。

    还有另一种解决方案(我在上面提到的第一段),即使用CSS provider set of Gtk functions 临时更改CSS。如果你真的想死板地写代码,你可以使用GtkWidget的modify_font方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多