Qt中怎样将一个子窗口填充满父窗口,比如,一个QTreeWidget窗口覆盖在一个QWidget窗口上,谢谢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt中怎样将一个子窗口填充满父窗口,比如,一个QTreeWidget窗口覆盖在一个QWidget窗口上,谢谢相关的知识,希望对你有一定的参考价值。

一定要是覆盖完全,谢谢

参考技术A 比如要完全覆盖的话,你要考虑两个问题,第一是大小一样,第二是位置重合,这样才能完全覆盖,大小的话用resize控制,位置的话用move(),这两个函数你看一下帮助文档就知道怎么用了,很简单追问

嗯,这个我考虑过,也用resize控制过,在获取父窗口尺寸的时候就有很大问题,获取的宽和高根本不是我所见的那么多,因为move()过去还是只占一小块区域,请问还有其他解决办法吗?

追答

你知道父窗口的大小是多少吗?要在ui的右面看长宽的,不是自己设置的,你看到长宽就知道可不可以了

追问

我没有用ui自己设置的,而且还可以缩放,所以没有固定值。还是谢谢你呀,呵呵

本回答被提问者采纳

Qt中怎样阻塞父窗口部分控件,而不完全阻塞父窗口所有控件??

setWindowModality(Qt::WindowModal)会阻塞父窗口所有控件的输入

参考技术A

    阻塞部分控件, 是指阻塞信号吗?

    阻塞信号可以使用eventFilter, 当出现某控件的某信号时,可以捕获此信号

参考技术B 建议你手动对需要禁用的控件setEnabled(false),然后对话框用非模式的 参考技术C 那你只能设置弹出窗口为非模态,手动将父窗口的控件disable

以上是关于Qt中怎样将一个子窗口填充满父窗口,比如,一个QTreeWidget窗口覆盖在一个QWidget窗口上,谢谢的主要内容,如果未能解决你的问题,请参考以下文章

如何组织一个隐藏父窗口和子窗口的系统。 QT

Qt 子窗口内嵌到父窗口中

QT5怎样设置父窗口刷新时,不刷新子窗口?

vs2010+qt,怎么在主窗口中打开一个子窗口

Qt::WindowFlags枚举类型(对Qt::Widget Qt::Window Qt::Dialog分别讲解,其中Qt::Widget是两用的,如新的窗口部件没有父窗口部件,则它是一个独立的窗口

qt编程,想在一个大的窗体上显示一个小的窗口,应该怎么编写程序呀,相当于一个父窗体,一个子窗体