Wo kommt erstellt der Code für einen neuen Slot QT Designer unterwegs mit?

StackOverflow https://stackoverflow.com/questions/4324418

  •  29-09-2019
  •  | 
  •  

Frage

Ich bin ein absoluter Neuling auf QT.

Ich arbeite mit qt 4.7.1 auf Visual Studio 2008.

Ich versuche, eine Taste zu implementieren, die alle durch Bild bedeckt ist, und wenn sie gedrückt wird, ändert sich das Bild. (Image-Taste) Ich versuche, QT Designer zu verwenden, um den Knopf in currect Layout setzt dann programmatisch das gepresste Ereignis behandeln (..signal ..) auf der Taste, um das Symbol zu ändern.

Erstellen neue Hauptfenster. setzt eine Werkzeugtaste darin. Umschalten auf Schlitze & Signale Modus. erstellt gedrückt ein Signal-Schlitz von der Taste (), um neuen slot1 () auf dem Fenster. jetzt, wo ich den Code slot1 put ()?

War es hilfreich?

Lösung

Sry für mein Englisch. Es ist rly schlecht, aber ich werde versuchen, Ihnen zu helfen.

Sie haben Vererbungsansatz zu verwenden. Also:
• Sie erstellt ein Formular, um eine Verbindung mit slot1 () auf diesem Formular hinzugefügt.
• Formular in Projekt enthält, kompiliert. Eine Datei mit dem Namen ui_FormName.h wird generiert. Am unteren Ende dieser Datei finden Sie Code wie:
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui

Sie müssen:
1) Erstellen Sie eine neue Klasse, erben von der Klasse QMainWindow.
2) In Headers erzeugt h-Datei, fügen Sie ein Mitglied der Typ Ui :: Mainwindow, die in diesem erzeugt .h-Datei deklariert wird (z .: Ui::MainWindow* m_puiTmp;).
3) Fügen Sie auch Code:
public slots: // or private slots:, or protected slots: ... Whatever.
void slot1();

dann Implementierung für Funktionen in der neuen Klasse erstellen. Vergessen Sie nicht hinzufügen m_puiTmp->setupUi( this ); in Ihrem Konstruktor, und erstellen Sie dann Implementierung für Ihren slot1() Steckplatz.

Sie können auch Ihre Slots und Signale in abgeleiteten Klasse beschreiben, und schließen Sie sie dann mit Signalen und Slots in QtDesigner. Einfach, wenn Sie einen jetzt Slot oder ein Signal in Designern hinzufügen, sie mit Namen entsprechend umbenennen, dass Sie im Code festgelegt.

Hope dies wird Ihnen helfen. Wenn Sie Ihr Problem nicht lösen können, schreiben Sie mir eine Nachricht. Ich werde versuchen zu helfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top