QT 讓視窗(或控制元件)居中

AAA20090987發表於2011-11-15

程式碼如下:


XXX::XXX(QWidget *parent /* = 0 */)
{
	..................
	//注意,resize一定要放在這段程式碼的前面
	resize(300, 300);
	int cx, cy;
	//當parent為空時,視窗就顯示在桌面中央
	if( NULL == parent )
	{
		cx = (QApplication::desktop()->width() - width()) / 2;
		cy = (QApplication::desktop()->height() - height()) / 2;
	}
	//否則,控制元件就顯示在父部件中央
	else
	{
		cx = ( parent->width() - width() ) / 2;
		cy = ( parent->height() - height() ) / 2;
	}
	move(cx, cy);
	....................
}

這段程式碼太常用了,就發上來和大家共享一下吧,呵呵。

相關文章