QWindowsWindow::setGeometry: Unable to set geometry

2024-02-26 16:20

本文主要是介绍QWindowsWindow::setGeometry: Unable to set geometry,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 把setFixedSize的大小加大后的确可以解决

2 当时笔记本外接的显示屏,当把外接显示屏去掉就没有问题了

可能导致setGeometry()不生效的原因:

1)部件尚未显示:如果部件尚未显示在屏幕上,setGeometry()函数将不会生效。您需要首先通过show()或raise()函数将部件显示在屏幕上。
2)布局限制:如果部件是在一个布局中,布局限制可能会影响setGeometry()函数的行为。在这种情况下,您需要使用布局相关的函数来调整部件的位置和大小,例如QGridLayout、QHBoxLayout或QVBoxLayout等。
3)父部件的限制:如果部件的父部件设置了限制,例如setMaximumSize()或setMinimumSize()等,这可能会影响子部件的几何属性。在这种情况下,您需要调整父部件的限制或者将子部件添加到另一个不受限制的部件中。
4)绘图环境问题:在某些情况下,setGeometry()函数可能不会立即反映在屏幕上,这可能是由于绘图环境的延迟更新。您可以尝试调用update()或repaint()函数来强制部件重新绘制。
5)代码执行速度:在某些情况下,由于代码执行速度过快,可能会导致setGeometry()函数在程序运行过程中未被正确执行。您可以尝试使用QTimer或类似的技术来延迟执行setGeometry()函数,以确保在程序运行时正确执行。
6)没有正确设置初始大小:setGeometry()函数只在部件被创建时设置一次初始大小。如果你在部件创建后多次调用setGeometry(),那么只有第一次调用会生效。你需要通过其他方式(例如,通过resize()函数)来改变部件的大小。
 

Qt中setGeometry的理解

如果在控件中加上了layout布局,就会发现发现没有办法使用setGeometry函数了,这是因为布局已经被layout管理,没你啥事了。

但是父控件被layout管理,父控件的子控件却没有啊 ,所以在创建子控件的时候,需要指定子控件的父控件是谁。这样子控件就可以使用

setGeometry函数,可以自由的调整位置,但是只能在父控件的范围内调整位置,同时必须注意setGeometry之后一定要调用show函数,

否则可能看不到控件存在。

这篇关于QWindowsWindow::setGeometry: Unable to set geometry的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/749458

相关文章

poj 3050 dfs + set的妙用

题意: 给一个5x5的矩阵,求由多少个由连续6个元素组成的不一样的字符的个数。 解析: dfs + set去重搞定。 代码: #include <iostream>#include <cstdio>#include <set>#include <cstdlib>#include <algorithm>#include <cstring>#include <cm

Collection List Set Map的区别和联系

Collection List Set Map的区别和联系 这些都代表了Java中的集合,这里主要从其元素是否有序,是否可重复来进行区别记忆,以便恰当地使用,当然还存在同步方面的差异,见上一篇相关文章。 有序否 允许元素重复否 Collection 否 是 List 是 是 Set AbstractSet 否

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已

多路转接之select(fd_set介绍,参数详细介绍),实现非阻塞式网络通信

目录 多路转接之select 引入 介绍 fd_set 函数原型 nfds readfds / writefds / exceptfds readfds  总结  fd_set操作接口  timeout timevalue 结构体 传入值 返回值 代码 注意点 -- 调用函数 select的参数填充  获取新连接 注意点 -- 通信时的调用函数 添加新fd到

Unable to instantiate Action, goodsTypeAction, defined for 'goodsType_findAdvanced' in namespace '/

报错: Unable to instantiate Action, goodsTypeAction,  defined for 'goodsType_findAdvanced' in namespace '/'goodsTypeAction......... Caused by: java.lang.ClassNotFoundException: goodsTypeAction.......

Android set Tag, findViewWithTag使用

设置了tag为“principal”的view ImageView principal = (ImageView) findViewById(R.id.imagen_home_0);principal.setTag("principal"); 在其它地方获取,获取已经设置了tag为“principal”的view LayoutInflater inflater = LayoutInflate

C++ STL关联容器Set与集合论入门

1. 简介 Set(集合)属于关联式容器,也是STL中最实用的容器,关联式容器依据特定的排序准则,自动为其元素排序。Set集合的底层使用一颗红黑树,其属于一种非线性的数据结构,每一次插入数据都会自动进行排序,注意,不是需要排序时再排序,而是每一次插入数据的时候其都会自动进行排序。因此,Set中的元素总是顺序的。 Set的性质有:数据自动进行排序且数据唯一,是一种集合元素,允许进行数学上的集合相

Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.B

一个bug日志 FATAL EXCEPTION: main03-25 14:24:07.724: E/AndroidRuntime(4135): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.syyx.jingubang.ky/com.anguotech.android.activity.Init

Eclipse或MyEclipse中Java Working Set管理项目

随着学习JAVA的时间的越来越久,项目也越来越多,Eclipse或MyEclipse界面中显示一堆! 每次工作使用到的项目肯定不会太多...... 每次从这么大数量的工程当中找到自己要使用的, 必须大规模的滚动滚动条...... 图片一   Project Explorer中:    图片二:Package Explorer中: 这样就好找很多了,分类放!

STL set整理

#include<set>#include<cstdio>#include<iterator>#include<iostream>#include<algorithm>using namespace std;//set 集合的操作//multisetset<int>Set1;set<int>Set2;set<int>Set3;/*begin() 返回指向第一个元素的迭代器