求助,自定义最大化显示不完全
如图,只有红框框里的那部分,其它部分(右边和下方)包括按钮都没了,但有的那部分按钮可以正常点击(红框外还有没放大时的残影)。
ps:在linux下编译运行也是一样的情况。 --------------------编程问答-------------------- 兄台开新帖问了?状况有点奇怪,不好猜原因,多贴些关键代码吧。 --------------------编程问答--------------------
嗯嗯,开个新帖好给分,我到新帖把关键代码贴出来。 --------------------编程问答--------------------
void MainWindow::max()
{
QRect Max;
Max = QApplication::desktop()->availableGeometry();
if(current!=Max)
{
current = geometry();
setGeometry(Max);
}
else
{
setGeometry(current);
}
}
--------------------编程问答-------------------- 感觉应该换个论坛问。。。这个论坛肿么好冷的样子 --------------------编程问答-------------------- titleBar和mainwindow是两个不同组件,你设置的是MainWindow的Geometry,Geometry从0,0开始的话,titleBar就到最上面被遮住了 --------------------编程问答-------------------- 你可以把titleBar和mainwindow放在一个frame上,然后设置frame的Geometry。 --------------------编程问答--------------------
MainWindow::MainWindow(QWidget *parent) :
QWidget(parent)
{
setWindowFlags(Qt::FramelessWindowHint);
titleBar=new TitleBar;
mainLayout=new QVBoxLayout;
mainLayout->addWidget(titleBar);
titleBar->setFixedHeight(150);
connect(titleBar,SIGNAL(min()),this,SLOT(showMinimized()));
connect(titleBar,SIGNAL(max()),this,SLOT(max()));
connect(titleBar,SIGNAL(close()),this,SLOT(close()));
}
我晕,那岂不是要改动很多。。。
可是我的titlebar是用布局镶嵌在mainwindow顶部的呀,放大后titlebar也没有被遮住,只是整个程序右边部分没了。。
补充:移动开发 , Qt