在Qt编程,特别是通过写代码的方式实现各种界面的时候,冷不防就会出现类似下面的报错:
Unable to set geometry 46x30+480+190 on QWidgetWindow/'QPushButtonClassWindow'. Resulting geometry: 116x30+480+190 (frame: 8, 30, 8, 8, custom margin: 0, 0, 0, 0, minimum size: 0x30, maximum size: 16777215x16777215).
刚好本人最近也遇到一个类似问题,这里分享下解决方案,便于自己学习也方便有需要的人借鉴。
发生这样的错的时候,目前我发现一种原因:
1)对于一个new出来的控件,在未加入布局前设置为不可见(setVisible(false))。
2)在父窗体未设置大小时,给子控件设置大小;
PS.出现这种问题的原因多种多样,大家有其它发现欢迎留言,我将汇总。
博主,自己的程序突然报了一种错误如下
set
Geometry
:
Unable
to
set
geometry
1420x1421+8+31 on
QWidget
Window
/'Main
Window
Window
'.
Resulting
geometry
: 1420x1181+8+31 (frame: 8, 31, 8, 8, custom margin: 0, 0, 0, 0, minimum size: 1376x1072, maximum size: 16777215x16777215).
解决
方案
由于子窗口和父窗口的大小关系不健康,导致父窗口resize失败,失败后会自定义大小
解决
方法:
首先,修改父窗口尺寸,保证其大小可以容纳子部件,可以使用
set
FixSize()之类的函数修改父窗口尺寸。
其次,一定要保证修改父窗口尺寸的函数是放在窗口布局代码之前,如图,我的
set
Interface()函数内是对窗口布局,若this->
set
FixSize(QSize(1200,800));函数在
set
Interface()后面,则还是会报这个错误,只需要将函数位置换一下即可
在
qt
5.9.5
qt
Creator上使用QInputdialog一直报警
set
Geometry
:
Unable
to
set
geometry
120x30+1179+658
在
qt
forum上找到了答案。
设置其他Flag,可消除报警,如下:
QString text = QInputDialog::getText(this, tr("
Set
ting"), tr("Please input password:"), QLineEdit::Password, "", &ok,
Qt
::MS..
set
Geometry
Dp:
Unable
to
set
geometry
200x100+1459+-799 on
QWidget
Window
/'Main
Window
Class
Window
'.
Resulting
geometry
: 236x100+1459+-799 (frame: 13, 58, 13, 13,
custom margin: 0, 0, 0, 0, minimum ...
今天调界面使用
set
FixedSize报错:Q
Window
s
Window
::
set
Geometry
:
Unable
to
set
geometry
1920x1080+0+0 on
QWidget
Window
/'CbAppParentWidgetClass
Window
'. Resulting
geometry
: 3840x1080+0+0 (frame: 0, 0, 0, 0, custom m...
在
window
s下编译出现了下面这些警告,u
bu
ntu下好像不会出现这个
set
Geometry
:
Unable
to
set
geometry
1080x1920+8+30 on
QWidget
Window
/'Callnumber
Window
'. Resulting
geometry
: 1080x750+8+30 (frame: 8, 30, 8, 8, custom margin: 0, 0...
set
Geometry
:
Unable
to
set
geometry
1730x1107+95+38 on
QWidget
Window
/‘WaveAnalysis
Window
’. Resulting
geometry
: 1730x1055+95+38 (frame: 9, 38, 9, 9, custom margin: 0, 0, 0, 0, minimum size: 0x0, maximum size: 16777215x16777215).
thread_collect_done in “202
在使用Dialog对话框时,虽然成功弹出了对话框,但是每次都会出现以下提示信息:
set
Geometry
:
Unable
to
set
geometry
152x30+851+462 on
QWidget
Window
/'QInputDialogClass
Window
'. Resulting
geometry
: 219x107+851+462 (frame: 9, 38, 9, 9, custom...