Layout 如何根据wxWidgets/wxGTK项目的大小正确布局它们?

Layout 如何根据wxWidgets/wxGTK项目的大小正确布局它们?,layout,responsive-design,wxwidgets,Layout,Responsive Design,Wxwidgets,我的应用程序中的所有内容都使用带有硬编码边框大小的尺寸标注器进行布局。这使得它非常适合使用wxWidgets的窗口: 但当我开始使用wxGTK将其移植到Linux时,由于GTK+3元素的大小可能会有很大的差异,因此所有元素最终都会出现错位: 有没有一种方法可以根据控件的大小以及测量单位点和像素之间的差异对项目进行相应的布局?您不能硬编码任何大小,以确保布局在不同平台上以不同的字体大小运行良好,DPI设置等。如果你在C++中定义了布局,使用 WXSIZFLAG::BoDRE()/,双边界()/

我的应用程序中的所有内容都使用带有硬编码边框大小的尺寸标注器进行布局。这使得它非常适合使用wxWidgets的窗口:

但当我开始使用wxGTK将其移植到Linux时,由于GTK+3元素的大小可能会有很大的差异,因此所有元素最终都会出现错位:


有没有一种方法可以根据控件的大小以及测量单位点和像素之间的差异对项目进行相应的布局?

您不能硬编码任何大小,以确保布局在不同平台上以不同的字体大小运行良好,DPI设置等。如果你在C++中定义了布局,使用<代码> WXSIZFLAG::BoDRE()/<代码>,<代码>双边界()/<代码>等方法。另外,将控件相对地对齐,例如,对应位于同一行的所有控件使用
Center()
(或使用
wxFlexGridSizer