Python3+GTK4带图片标签的按钮显示异常求助
我为Linux开发了一款名为Kamarada Firstboot的简单应用(源码托管于GitLab),采用Python 3和GTK开发,目前正在从GTK 3迁移到GTK 4。已完成大部分GTK 4移植工作(gtk4分支),但遇到了GtkButton相关的显示问题。
GTK 4移除了GtkButton的label和image属性,我通过GtkBox、GtkPicture与GtkLabel组合来实现原有的按钮外观。所有GtkButton的代码结构类似,示例如下:
<object class="GtkButton" id="btnPortuguese"> <property name="child"> <object class="GtkBox"> <property name="margin-bottom">10</property> <property name="margin-end">10</property> <property name="margin-start">10</property> <property name="margin-top">10</property> <property name="orientation">vertical</property> <property name="spacing">10</property> <child> <object class="GtkPicture" id="imgPortuguese"> <property name="halign">center</property> <property name="valign">start</property> </object> </child> <child> <object class="GtkLabel"> <property name="label">Português Brasileiro</property> </object> </child> </object> </property> <layout> <property name="column">0</property> <property name="row">2</property> </layout> <signal name="clicked" handler="onBtnPortugueseClicked"/> </object>
尽管所有按钮的代码结构一致,但显示效果却不一致:


请问我哪里操作有误?
我是Python和GTK新手,但有一定编程经验。相关文件为kamarada-firstboot.py和kamarada-firstboot.ui。
项目快速启动步骤(需已安装Git、Python 3和GTK 4):
$ git clone https://gitlab.com/kamarada/firstboot.git $ cd firstboot $ git checkout gtk4 $ cd usr/share/kamarada-firstboot $ python3 kamarada-firstboot.py
程序结束后会将用户选择输出到~/.config/kamarada-firstboot,测试时可删除该文件。
内容的提问来源于stack exchange,提问作者Vinicius Menezes
相关产品推荐
相关产品推荐

