我在 VBox 中有一个 GtkLabel 和一个 GtkDrawingArea,我想将标签相对于 GtkDrawingArea 的 X 坐标(位于 VBox 中的标签下方)居中,我如何告诉 GTK 将该标签相对于该标签居中“锚”点?这个点应该是标签的中心。
问问题
275 次
2 回答
2
由于您的 GtkLabel 和 GtlDrawingArea 在 GtkVBox 内,因此它们的位置是相对的。以下应将标签的对齐方式设置为中心:
gtk_misc_set_alignment(GTK_MISC(label), 0.5F /*X*/, 0.5F /*Y*/);
如果您不想将 GtkLabel 的文本居中,则可以使用 GtkAlignment 小部件:
GtkWidget* helper;
helper = gtk_alignment_new(0.5F /*X*/, 0.5F /*Y*/, 0.0F, 0.0F);
gtk_container_add(GTK_CONTAINER(helper), label);
gtk_box_pack_start_defaults(GTK_BOX(vbox), helper);
您可以通过调用gtk_alignment_set
函数重新对齐它。
于 2010-08-18T23:02:56.100 回答
0
我通过使用来解决我的问题gtk_alignment_new
,以便创建居中对齐,然后我用gtk_alignment_set_padding
与任意 x 轴值对齐所需的填充量填充右填充。感谢您的回答!
于 2010-08-19T14:12:35.487 回答