Qt基本問答

來源:互聯網
上載者:User

1 QWidget類有什麼用途?
  在Qt應用程式中,QWidget用做工作空間.它是底層視窗,在其上可以放置其他對象,如按鈕等.

2 a.setMainWidget(&mainwindow);語句的意義是什麼?
  這段代碼告訴Qt,說明mainwindow對象是程式的主組件.當主組件關閉時,整個程式隨之結束.
  (主組件與其他Qt組件的區別是:當主組件終止時,整個程式就運行結束.)

3 我不理解setGeometry()中的參數究竟代表什麼意思?
  這一點比較容易混淆.你應該明白,象素(0,0)表示監視器的左上方,而不是我們習慣的左下角.因此,如果你在主視窗中使用setGeometry,setGeometry的第一個參數定義在螢幕的左邊和視窗的左上方之間的象素數.第二個參數定義在螢幕的上邊和視窗的左上方之間的象素數.接下來的兩個參數以象素為單位定義視窗的寬度和高度.一旦你習慣它,這也就不難理解了.

4 為什麼不必調用每個對象的show()函數?
  當調用父組件的show()函數時,子組件被自動顯示.

5 為什麼輸入this指標代替父組件?
  this指標表示在當前類中還未建立的對象.因此,如果設定this指標作為父組件,父組件將是在後面的main()函數中所要建立的對象.

6 什麼是qApp?
  qApp的建立和this指標想法相同.它是一個指向還未建立的QApplication對象(它在main()中建立)的指標.

7 為什麼在main()函數中需要調用a.exec()函數?
  在這一行,將程式控制權傳遞給Qt庫.從這裡開始,Qt負責處理使用者互動和其他程式操作.

8 我的編譯器報告傳遞給connect()函數的參數錯誤,這是為什嗎?
  connect()函數參數使用對象指標,而不是對象本身.因此,你必須確認所提供的參數是正確的.

9 能否將多個槽串連到一個訊號?
  能夠,這是可能的.只需為每個串連調用一次connect()函數.

10在調用connect()函數時,省略槽所屬對象名稱意味著什嗎?
  這意味著槽在當前類中定義(也就是說,類是當前所定義類).因此,只能從具有槽的類成員函數中執行這類調用.

11是否能夠將一個訊號串連到其他訊號?如果能,應該怎樣操作?
  可以.只需象通常一樣使用connect()函數,如:
  connect(button,SINGAL(clicked()),this,SINGAL(anothersignal()));

12檢查是否點擊QPushButton對象使用什麼訊號?
  clicked()訊號.(應用QPushButton::setDefault()的按鈕將變為預設按鈕--即使用者按斷行符號鍵時將點擊的按鈕)

13使用Qprinter::setOrientation()函數(向它傳遞Qprinter::Portrait或Qprinter::Landscape)能夠設定方向.

14是否能夠選擇多個檔案?
  可以,只要使用QFileDialog::getOpenFiles()函數(注意結尾的s)

15重新編譯Qt非常耗時!有沒有辦法能夠加速這一過程?
  不能加速實際編譯.但是,如果你的儲存空間足夠,可以在首次編譯Qt後將.o檔案保留在硬碟上.之後,如果需要重新編譯Qt庫(例如,增加對gif的支援),這一過程將大大加快.當運行 make clean命令時,.o檔案被刪除.因此,如果你有足夠的空間,可以跳過這一步.

16當使用目前時間時,時間將自動調整為程式運行時區的當地時間嗎?
  是的,這依賴於電腦的系統時鐘.因此,如果它被設定為當地時間,當調用QTime::getCurrent()時QTime將得到當地時間.這也意味著如果你的系統時鐘設定是錯誤的,QTime::getCurrent()將返回錯誤的時間.

                                                                                                                                             ------摘自<<24小時學通Qt編程>>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.