我在创建GUI方面并不擅长,通常我的理念是:我不创建它们,或者让它们尽可能简单(并说服自己,它更适合于可用性)。
对于我当前的项目,我正在使用Python中的Qt(PyQt),我想开始添加一些GUI元素而不会使界面混乱。
我的想法是将这些元素创建为一种只在必要时出现的浮动形状的小部件;非常类似于chrome中的状态栏(和查找栏)。
是否有任何标准API可以创建这种界面?
答案 0 :(得分:5)
这不是很复杂。如果您想要Chrome中的状态栏,则只需在窗口底部放置一个QFrame,并在需要时显示或隐藏它。
这里有2个选项,添加是窗口布局的一部分,因此所有项目在显示时都会向上移动。或者你可以浮动,所以它会显示在项目的顶部。对于第二个选项,您需要创建QFrame,窗口为父级,然后在窗口resizeEvent中设置框架的几何。
这是第二种方法的一个例子:
void MyWindow :: resizeEvent(QResizeEvent * event) { frame.setGeometry(0,this-> height() - frame.sizeHint()。height(),this-> width(),frame.sizeHint()。height()); }
我希望这会有所帮助。