原创 8-1 用QPainter繪圖(Painting with QPainter)

  要在繪圖設備(paint device,一般是一個控件)上開始繪製,我們只要創建一個QPainter,把繪圖設備指針傳給QPainter對象。例如

原创 6-1 排列窗體上的控件(Laying Out Widgets on a Form)

  中英文對照:form(窗體),layout(佈局或者排列,意思是進行窗體上控件的排列的過程,如大小位置等) absolute positionin

原创 7-1 重寫事件處理函數(Reimplementing Event Handlers)

  在Qt中,一個事件是QEvent的子類的對象。Qt能夠處理上百種類型的事件,每一類型的事件由一個枚舉值確定。例如,對鼠標點擊事件,QEvent::

原创 5-3 把自定義控件集成到Qt Designer中(Integrating Custom Widgets with Qt Designer)

  要想在Qt Designer中使用自定義控件,必須要使Qt Designer能夠知道我們的自定義控件的存在。有兩種方法可以把新自定義控件的信息通知

原创 5-2 從QWidget繼承新類(Subclassing QWidget)

  許多Qt的控件或者象HexSpinBox這些自定義控件都是現有的控件的一個組合。由Qt控件組合而成的用戶控件可以用Qt Designer實現: 1

原创 第八章序 2D和3D圖形系統(2D and 3D Graphics)

  Qt的2D圖形系統的基礎是類QPainter。QPainter能夠繪製各種幾何圖形(點,線,矩形,橢圓,圓弧,弦,扇形,多段線,貝賽爾曲線),還能

原创 6-6 多文檔界面(Multiple Document Interface)

  一個主窗口區域內能夠提供多個文檔的程序稱之爲多文檔程序,或者MDI程序。在Qt中,一個MDI程序是由QWorkspace類實現的,把QWorksp

原创 6-3 分隔控件(Splitters)

中英文對照Splitter handles(分隔條)  一個QSplitter控件中可以包含其他控件,這些控件被一個分隔條隔開,託拽這個分隔條,裏面的控件的大小可以改變。QSplitter控件經常做爲佈局管理器使用,給用戶提供更多的界面控

原创 7-2 安裝事件過濾器(Installing Event Filters)

  Qt的事件模型一個強大的功能是一個QObject對象能夠監視發送其他QObject對象的事件,在事件到達之前對其進行處理。 假設我們有一個CustomerInfoDialog控件,由一些QLineEdit控件組成。我們希望使用Spac

原创 5-4 雙緩衝技術(Double Buffering)(3、事件處理函數)

 以下是Plotter控件的事件處理函數部分   void Plotter::paintEvent(QPaintEvent * /* event */) {     QStylePainter painter(this);     pa

原创 5-4 雙緩衝技術(Double Buffering)(5、類PlotSettings實現)

  下面是PlotSettings的實現: PlotSettings::PlotSettings() {     minX = 0.0;     ma

原创 7-3 系統繁忙時的響應(Staying Responsive During Intensive Processing)

  當我們調用QApplication::exec()時,Qt就開始了事件循環。啓動時,Qt發出顯示和繪製事件,把控件顯示出來。然後,事件循環就開始了,不停檢查是否有事件發生,然後把事件分派到程序中的QObject對象。 一個事件正在處理

原创 5-4 雙緩衝技術(Double Buffering)(1、簡介和源代碼部分)

  這一節實在是有些長,翻譯完後統計了一下,快到2w字了。考慮到閱讀的方便和網絡的速度,打算把這節分爲5個部分,第一部分爲雙緩衝技術的一個簡介和所有的

原创 第六章序-佈局管理(Chapter 6. Layout Management)

  窗體上的所有的控件必須有一個合適的尺寸和位置。Qt提供了一些類負責排列窗體上的控件,主要有:QHBoxLayout,QVBoxLayout,QGr

原创 6-4 滾動區域(Scrolling Areas)

  英漢對照:viewport(視圖) QScrollArea類提供了一個可以滾動的可視窗口和兩個滾動條。如果我們想給一個控件加上一個滾動條,從QScrollArea繼承會比設計我們自己的QScrollBar類實現滾動函數更簡單。 Fig