在 C 中使用 GTK 构建 GUI,使用基本的 Widgets 一切皆有可能吗?或者我应该建立一个自定义的?
Building a GUI with GTK in C, is everything possible with the basics Widgets ? Or should I build a custom one?
首先,我是 GTK 的新手,不会认为自己对 C 非常有经验。
我目前正在做一个项目,我必须在 C 中构建一个 GTK GUI。我已经开始修改 GTK 库,但似乎找不到这样的小部件将匹配我必须制作的 UI 的确切外观,尤其是在使用现有小部件构建布局时。
由于我对 GTK 不是很熟悉,我想知道是否应该为我想做的事情构建自己的小部件?我已经添加了我想要实现的渲染图像:
是否可以在不构建自定义小部件的情况下实现这种外观?
是否有存在于 GTK 之上且具有更多可用小部件的库可以帮助我解决这个问题?
谢谢。
几乎所有你在那里得到的东西都可以用内置的小部件来完成,除了可能 phone 图标与容器顶部的偏移量.您应该尽可能使用内置小部件。
您真正需要的是 CSS 样式。这将允许您自定义现有小部件的外观。您可以为所有特定类型的小部件设置样式,或者您可以将 classes 添加到 UI 文件中的各个小部件并对其应用样式。
例如,您可能想要添加 notification-row
class 和一些 CSS,例如:
.notification-row {
background-color: grey;
border-radius: 6px;
}
Here's a list of available CSS properties.
要将 CSS 文件添加到您的程序,请将其添加到您的 .gresources.xml 文件,然后按照 GtkCssProvider
.
的说明中的说明进行操作
首先,我是 GTK 的新手,不会认为自己对 C 非常有经验。
我目前正在做一个项目,我必须在 C 中构建一个 GTK GUI。我已经开始修改 GTK 库,但似乎找不到这样的小部件将匹配我必须制作的 UI 的确切外观,尤其是在使用现有小部件构建布局时。
由于我对 GTK 不是很熟悉,我想知道是否应该为我想做的事情构建自己的小部件?我已经添加了我想要实现的渲染图像:
是否可以在不构建自定义小部件的情况下实现这种外观?
是否有存在于 GTK 之上且具有更多可用小部件的库可以帮助我解决这个问题?
谢谢。
几乎所有你在那里得到的东西都可以用内置的小部件来完成,除了可能 phone 图标与容器顶部的偏移量.您应该尽可能使用内置小部件。
您真正需要的是 CSS 样式。这将允许您自定义现有小部件的外观。您可以为所有特定类型的小部件设置样式,或者您可以将 classes 添加到 UI 文件中的各个小部件并对其应用样式。
例如,您可能想要添加 notification-row
class 和一些 CSS,例如:
.notification-row {
background-color: grey;
border-radius: 6px;
}
Here's a list of available CSS properties.
要将 CSS 文件添加到您的程序,请将其添加到您的 .gresources.xml 文件,然后按照 GtkCssProvider
.