回答
覆蓋QWidget::showEvent()
(見QT documentation)
您可以重寫公共職能顯示在你的類,例如:
mainwindow.h
class MainWindow : public QMainWindow {
Q_OBJECT;
public:
MainWindow();
void myShow() {
activateWindow();
show();
emit mySignalFunc();
}
signals:
void mySignalFunc() {
qDebug() << "Here is my signal!!!";
};
};
的main.cpp在main()函數:
MainWindow wnd;
wnd.myShow();
祝你好運!
這是個壞主意。 QWidget :: showEvent()受保護的虛函數應該被重新實現。你的例子的一個缺點:有兩個函數「show()」和「myShow()」在這個類中做同樣的事情,但你需要記住(並讓其他團隊成員記住)只使用「myShow )」。 – VestniK 2010-06-04 08:24:58
@VestniK我知道,我認爲jopa是正確的,當我們重新實現QWidget :: showEvent()函數時,它是正確的方法,但是!我可以閱讀*我是QT新手,所以請詳細說明*,至少對我而言,這種方法對Peeyush來說太複雜了。 VestniK,你是否學過C++,Qt或者書籍的最後? :) 與個人無關。 – mosg 2010-06-04 08:32:38
我給了你詳細的解釋,爲什麼我認爲按照你的建議是個壞主意。無論Qt中的Peeyush知識如何,我都相信他將能夠重新實現一個受保護的虛擬功能。我確實相信,從一開始就應該學習最佳實踐。我認爲你的建議只有在沒有其他方法來實現這種功能的情況下才是好的,因爲它可能會導致難以調查的錯誤。我把-1作爲你的答案,因爲我真的認爲這是個不好的答案。不要個人承擔。 – VestniK 2010-06-04 19:18:34
- 1. 如何在擺動上打開窗口
- 2. 如何在啓動時在Cocoa應用程序中打開一個新窗口
- 3. 如何在程序打開的文件上發出EOF信號
- 4. 如何在打開的應用程序上啓動AlarmManager?
- 5. 如何啓動我們的應用程序,因爲Iphone打開
- 6. 如何使用window.open()打開子窗口上的父窗口()
- 7. 如何在撥號程序打開時啓動浮動圖標
- 8. 如何在Mac OS X上自動打開終端窗口
- 9. 的Mac OS X:打開應用程序登錄時,不顯示我正在開發,我想自動啓動應用程序的主窗口
- 10. 打開的窗口中自我並執行JavaScript的新窗口
- 11. 在wmi中的遠程機器上啓動程序,但也打開應用程序窗口(在c#中)
- 12. Android:如何讓我的應用程序自動打開?
- 13. C#如何選擇一個打開的應用程序窗口
- 14. 打開新的tkinter窗口後啓動外部進程。 [Python]
- 15. Java運行時:由窗口啓動的進程無法打開
- 16. 如何自動啓動窗口服務
- 17. 從Mac上的SWT應用程序打開LWJGL窗口
- 18. 在其他應用程序之上的Python OpenCV打開窗口
- 19. 舊窗口的信號處理程序被新的窗口信號處理程序取代GTK +
- 20. 如何隱藏與我的應用程序打開的控制檯窗口?
- 21. 我如何關閉所有打開的窗口從我的C#程序?
- 22. 如何在設備上啓動黑莓應用程序打開/打開
- 23. 如何自動關閉打開的vtk窗口?
- 24. 如何關閉Emacs中自動打開的窗口?
- 25. 自動完成並打開新窗口
- 26. 自動打開完成窗口在Eclipse
- 27. 窗口在C#中新啓動的過程中顯示出來的背後我當前打開的窗口
- 28. 隱藏Java應用程序啓動的窗口應用程序?
- 29. 如何在新窗口中打開Facebook牆上的應用程序鏈接?
- 30. 如何打開當前窗口(上)?
你是什麼意思 「使信號」?用QObject :: blockSignals()成員發出或連接或取消阻塞之前被阻止的信號?無論你想要做什麼,你應該覆蓋Widget :: showEvent()在你的窗口顯示時執行某些操作。 – 2010-06-04 08:12:59