Qt 常用窗口操作

移动窗口到屏幕中间(窗口居中)

 move ((QApplication::desktop()->width() - width())/2,(QApplication::desktop()->height() - T height())/2);


Qt 生成基于对话框的程序时,程序的右上角是没有最大化、和最小化按钮的。这时可以用下面的代码: 

setWindowFlags(windowFlags() | Qt::WindowMaximizeButtonHint);
setWindowFlags(windowFlags() | Qt::WindowMinimizeButtonHint);

 

如果需要程序一运行就最大化,可以加入下面的代码:

setWindowState(Qt::WindowMaximized);

 

如果不希望窗口大小发生变化,可以利用下面的函数将窗口大小固定。

setFixedSize();


 window.showFullScreen() // 全屏显示函数   此方法只对顶级窗口有效,对子窗口无效 
 window.showMaximized() //最大化显示函数
 window.showMinimized()  //最小化显示函数
 window.resize(x,y)   //固定尺寸显示函数


获取屏幕宽度和高度

QApplication::desktop()->width()  ;
QApplication::desktop()->height() ;


int width = this->geometry().width();
int height = this->geometry().height();
this->setFixedSize(width,height); //设置窗体固定大小


拦截窗口关闭事件

void closeEvent( QCloseEvent *event );
void MainWindow::closeEvent(QCloseEvent *event){

     //event->accept(); 允许,事件传递继续
     event->ignore();  //阻止,事件不再传递
}