qt簡單界面一些設置

一、主界面
1.無邊框
setWindowFlags(Qt::FramelessWindowHint);
2.界面始終位於頂部位置
setWindowFlags(Qt::WindowStaysOnToHint);
3.任務欄圖標點擊時進行顯示/不顯示切換
setWindowFlags(Qt::WindowMinimizeButtonHint)
4、隱藏任務欄顯示
setWindowFlags(Qt::Tool | Qt::X11BypassWindowManagerHint)
5.繪製背景圖片並實現圓角效果
paintEvent(QPaintEvent*)
{
QPainter painter(this);
QBrush brush;
brush.setTextrueImage(QImage(background_image);
painter.setBrush(brush);
painter.setPen(Qt::NoPen);
painter.drawRoundedRect(this.rect(),5,5);
}
6.設置應用程序的字體
QFont font(“Courier”,10,QFont::Normal,false);
QApplication::setFont(font);

7、設置組件字體

QFont font = this->font();
font.setFamily("Courier");  //字體名稱
font.setPixelSize(16);  //字體點大小
font.setPointSize(18);  //字體像素大小
font.setBold(true);  //是否加粗
font.setItalic(true);  //是否斜體
font.setUnderline(true);  //是否下劃線
this->setFont(font);
字體風格,包括類型、大小、是否加粗、是否斜體等!

也可以使用:setStyleSheet(“text-align:center; font-size:18px; font-weight:bold; font-style:Courier; color:white; “);

setAlignment(Qt::AlignCenter);  //設置對齊方式

二、全屏顯示與還原

關於這個問題,當做一個大的標題來討論,因爲比起其它小技巧要稍微複雜一些!
全屏顯示:

1、遮擋任務欄:

showFullScreen()、showMaximized()這兩個都可以!

2、不遮擋任務欄:

    void MainWidget::showMaximize()
   {
     //若已經最大化
       if(is_max)
      {
          //恢復界面位置,並設置按鈕圖標爲最大化圖標,提示“最大化”

          this->setGeometry(location);

          max_button->setIcon(QIcon("maxbtn"));

  max_button->setToolTip(tr("max"));

      } 
      else  {
          //設定當前界面的位置,還原時使用
          location = this->geometry();
          //獲取桌面位置,設置爲最大化,並設置按鈕圖標爲還原圖標,提示“還原”
      QDesktopWidget *desk = QApplication::desktop();
      this->setGeometry(desk->availableGeometry());

max_button->setIcon(QIcon(“restorbtn”));
max_button->setToolTip(tr(“restor”));
}
is_max = !is_max;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章