[英]Window Templates in Qt (Or basically object oriented Windows)
因此,我有一堆要创建的窗口,每个窗口都不同,但是具有相似的属性。 为了简单起见,我们只需要在底部放置一行按钮即可(每个窗口的实际按钮不同,但是它们的配置应相同)。 然后在窗口的上半部分,我希望它基于打开的窗口。
简而言之,我希望窗口A具有窗口模板,窗口底部带有按钮。 然后按钮B实例化按钮,顶部有自己的东西,窗口C有自己的按钮组,顶部有东西,与B完全不同。
有什么办法可以在Qt中做到这一点吗? 也可以只有一个窗口A,并在适当时让它在B和C中的配置之间来回切换?
是的,可以用Qt完成。 您可以动态创建小部件。 将每个窗口设计为单独的QWidget,其中将包含其他窗口小部件(例如,按钮)。 然后,主窗口将包含一个简单的boxlayout以及动态创建的这些窗口小部件之一。 当所需的窗口类型更改时,删除当前窗口小部件并创建另一个窗口小部件。
另一个选择是将窗口A,B和C所需的所有小部件都放在同一窗口中。 当需要窗口A时,显示属于它的小部件并隐藏其他小部件。
实际上,如果您对QTab有所了解,那么它可以按照您所描述的方式工作,只是它在顶部添加了一组选项卡,而这在这里可能是不需要的。
但无论如何......创建一个QMainWindow,在其中创建3个小部件(A,B和C)。 使用A时隐藏B和C.然后在使用B等时隐藏A和C.
这与Roku提出的类似,但他有一个不同的树组织,因为他只会显示一个窗口并更改那个较大窗口中的小部件。 拥有3个覆盖整个窗口并在它们之间切换的小部件可能更容易管理,因为实际上当从一个窗口切换到另一个窗口时,它们只需更改其中的两个。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.