So rufen Sie die Schaltfläche von einem angeklickten Ereignis ab

8

Ich versuche ein kleines GUI zu erstellen, um .ear und .war Dateien auf meinem zu deployen lokale Glasfisch-Installation. SO habe ich fünf Zeilen mit einem Dateinamensfeld, ein Kontrollkästchen und eine Schaltfläche, um eine Dateidialogbox aufzurufen um die War / Ear-Datei zu finden. Es wäre schön alle Tasten anzurufen die gleiche Funktion und von der Funktion aus, welche der fünf Schaltflächen, die den Aufruf ausgeführt haben (um die korrekten Textfelder zu aktualisieren). Nicht wissen, ob dies der beabsichtigte Weg ist, dies objektorientiert zu tun aber meine einzige gui-programmierungserfahrung ist ein altes win16-event Schleifen:).

// BRG Anders Olme

    
Buzzzz 04.03.2011, 06:37
quelle

2 Antworten

8

Verbinden Sie das click() -Signal jeder Schaltfläche mit ein und demselben Slot und verwenden Sie QObject * QObject::sender () const [protected] In diesem Slot finden Sie heraus, welcher Button das Signal gesendet hat (wurde angeklickt). Alternativ könntest du QSignalMapper verwenden, was eine spezielle Klasse ist, die nur für diese Art von Aufgabe erstellt wurde.

    
Piotr Dobrogost 04.03.2011, 08:12
quelle
9
%Vor%

Ich habe diese Methode verwendet, um einen solchen Fall zu implementieren, weil Code besser lesbar ist, aber er kann zeitaufwendig sein, wenn der String-Vergleich kommt. Danke!

    
DigviJay Patil 09.09.2014 10:05
quelle