Multiplattform-Programmierung in C ++ und Qt unter GNU / Linux Environment

Die ursprüngliche Umgebung ermöglicht das Programmieren in C ++ , es gibt jedoch Bindungen (Anpassung einer Bibliothek zur Verwendung in einer anderen Programmiersprache), wie z.

PyQt und PythonQt für Python, Qt Jambi für Java und Qyoto und Kimono für C #, unter anderem

Es gibt vier Versionen der Bibliothek Qt, Enterprise, Professional, Indie Mobile und Community. Die letzte Version ist kostenlos. Wenn Sie sie herunterladen möchten, geben Sie sie hier ein .

Einige Unternehmen, die Qt und mit Qt entwickelte Anwendungen verwenden, sind:

Google Earth, KDE, Adobe Photoshop, die Europäische Weltraumagentur, Siemens, Volvo, die Walt Disney Animation Studios, Skype, Samsung, Philips, Panasonic, VirtualBox usw.

Installation der Qt Community

Wir gehen auf die Website zum Herunterladen von https://www.qt.io/do…ad-open-source/, unabhängig davon, auf welchem ​​Betriebssystem wir das Web-Autodetectara verwenden, und wir erhalten die Bibliothek Qt SDK und Qt Creator für die Entwicklung die IDE-Software entspricht unserem Betriebssystem. In diesem Tutorial werden wir es unter Linux installieren, aber unter Windows wird es wie jede andere Software installiert.

Sobald das Installationsprogramm vom Terminalfenster heruntergeladen wurde, fahren wir mit der Installation mit den folgenden Befehlen fort.

Debian / Ubuntu / Mint

 sudo apt-get installiere build-essential libgl1-mesa-dev 

Fedora / RHEL / CentOS

 sudo yum groupinstall "C-Entwicklungstools und -Bibliotheken" sudo yum installiere table-libGL-devel sudo chmod + x qt-opensource-linux-x64-1.6.0-8-online.run sudo ./qt-opensource-linux-x64-1.6.0-8-online.run 

Wir können dann den C ++ – Compiler, den Debugger und andere Entwicklungstools ändern und konfigurieren.

programacion.jpg

Wir gehen zum Menü Extras (Extras)> Optionen und zum Reiter Kit, dort sehen wir, ob wir in diesem Fall das SDK von Qt Qt 5.4.1 konfiguriert haben.

programacion2.jpg

Dann sehen wir auf der Registerkarte Compiler, welcher Compiler oder welche Compiler verfügbar sind.

programacion3.jpg

Wir sehen, dass wir den GCC-Compiler (GNU Compiler Collection) für 32 und 64 Bit haben.

Qt Creator erkennt automatisch die Compiler, die im Betriebssystem registriert sind. Compiler können hinzugefügt werden, um Anwendungen mit anderen Compilern oder mit zusätzlichen Versionen der automatisch erkannten Compiler zu erstellen:

  • GNU Compiler Collection (GCC) ist ein Compiler für Linux und Mac OS X.
  • MinGW (Minimalist GNU for Windows) ist eine Version von GCC und wird bei der Entwicklung nativer Windows-Anwendungen unter Microsoft Windows verwendet. MinGW wird zusammen mit Qt Creator und Qt SDK für Windows vertrieben.
See also  Aktivieren oder deaktivieren Sie die automatische Vervollständigung im Explorer oder unter Windows 10

Über die GCC- und MinGW-Compiler können wir plattformübergreifende Software erstellen.

Wir erstellen eine Anwendung mit Qt

Wir gehen zu Neues Projekt und wählen Qt Widget-Anwendung . Dies impliziert, dass wir ein typisches Desktop-Anwendungsfenster erstellen, das die Anwendung enthält.

programacion4.jpg

Klicken Sie auf das Bild, um es zu vergrößern

Als nächstes erscheint ein Bildschirm, in dem wir den Namen des Projekts angeben, dann den Compiler auswählen, den wir verwenden, und schließlich die Namen der Dateien und Klassen unserer Anwendung angeben.

programacion5.jpg

Klicken Sie auf das Bild, um es zu vergrößern

Die * .ui-Datei ist XML-Code und enthält das Design des Fensters, der Schaltflächen, Textfelder und anderer Elemente. Eine Header-Datei (.h), die Systemfunktionen und die des Entwicklers enthält, generiert ebenfalls eine Datei der Implementierung * .cpp, wo ist der Funktionscode der Anwendung oder dieses Fensters.

Nach Abschluss greifen wir auf IDE oder Integrated Development Environment zu und sehen die Header-Datei im Bearbeitungsmodus.

Die integrierte Entwicklungsumgebung wird zum Entwerfen von Fenstern oder Formularen für die Anwendung verwendet, sodass Widgets, Dialogfelder und Elemente, die das Bildschirmdesign darstellen, das der Benutzer beim Ausführen der Anwendung sieht, schnell gezogen und gefunden werden können. Die Formulare oder Fenster sind voll funktionsfähig und können sofort in der Vorschau angezeigt werden, um sicherzustellen, dass die Anwendung aussieht. Klicken Sie dazu auf den grünen Pfeil, um sie auszuführen, oder drücken Sie

+ R Strg + R

programacion6.jpg

Klicken Sie auf das Bild, um es zu vergrößern

Die Datei main.cpp wird zuerst ausgeführt und die Datei frmsoft.cpp enthält den Code c + des Fensters. Während frmsoft.ui das Design ist, sehen wir, wenn wir auf diese Datei und dann auf Design klicken, den Designmodus .

programacion7.jpg

Wir können links die Werkzeuge und Steuerelemente zum Ziehen und Ablegen im Anwendungsfenster beobachten, das sich in der Mitte befindet.

Rechts sehen wir die Elemente in hierarchischer Form und unter dem Papier mit den Eigenschaften jedes ausgewählten Elements. Dies ist sehr ähnlich zu anderen Umgebungen wie Visual Studio.net oder Netbeans.

See also  Importieren oder Exportieren von Daten aus Chrome in Firefox Quantum

Lassen Sie uns einige Kontrollen setzen

  • Bei TextEdit ändern wir die Eigenschaft objectName und weisen ihr den Namen txtMessage zu.
  • Als PushButton ändern wir die Eigenschaft objectName und weisen ihr den Namen btpress zu, ändern die Eigenschaft Text und weisen sie Press zu.
  • Ein PushButton, wir ändern die Eigenschaft objectName und wir weisen ihm zwischendurch den Namen zu und ändern die Eigenschaft Text und weisen sie Delete zu.

programacion8.jpg

Wenn wir durch Klicken auf Bearbeiten in den Bearbeitungsmodus zurückkehren, können wir in der Datei frmsoft.ui sehen, wie sich die XML-Datei ändert:

 <? xml version = "1.0" encoding = "UTF-8"?> <ui version = "4.0"> <class> frmsoft </ class> // Hauptfenster <widget class = "QMainWindow" name = "frmsoft"> <property name = "geometry"> <rect> <x> 0 </ x> // Positioniere x auf dem Desktop <y> 0 </ y> // Positioniere und auf dem Desktop <width> 400 </ width> // Fensterbreite <height> 300 </ height> // Hohes Fenster </ rect> </ property> <property name = "windowTitle"> <string> frmsoft </ string> </ property> // boto Drücken Sie <widget class = "QWidget" name = "centralWidget"> <widget class = "QPushButton" name = "bpress"> // Name der Schaltfläche <property name = "geometry"> <rect> <x> 80 </ x> // Positionieren Sie x im Fenster <y> 180 </ y> // positionieren und im Fenster <width> 80 </ width> // Höhe der Schaltfläche <height> 23 </ height> // Tastenbreite </ rect> </ property> <property name = "text"> <string> Drücken Sie die Taste </ string> // </ property> </ widget> 

Für den Rest der Steuerelemente ist es das gleiche, alle diese Eigenschaften können zur Entwurfszeit geändert werden oder während der Ausführung sehen sie dynamische Form.

Als nächstes gehen wir zum Design, indem wir auf frmsoft.ui und auf Design klicken, um die Funktionalität der Schaltfläche Drücken zu programmieren. Wir wählen das Element aus, zu dem wir ein Event hinzufügen möchten, drücken dann die rechte Maustaste und gehen zur Option Gehe zu Slot .

programacion9.jpg

Ein Dialogfeld wird angezeigt, in dem Sie das Ereignis auswählen können, z. B. angeklickt (angeklickt) , gedrückt (gedrückt) und viele andere. Wir wählen angeklickt und es öffnet sich der Funktionscode des frmsoft.cpp Fensters mit der Funktion.

See also  Erstellen von Vertrauensstellungen in einer Gesamtstruktur mit Windows Server

Wir werden eine Meldung anzeigen, wenn Sie auf die Schaltfläche klicken, um das Textfeld aufzurufen. Ich muss die Klasse ui verwenden, die alle Elemente des aktuellen Fensters enthält.

ui.elemento.propiedad erlaubt uns mittels options desplegables das Element und die Eigenschaft auszuwählen

Sehen wir uns den Code an:

programacion10.jpg

 #include "frmsoft.h" #include "ui_frmsoft.h" frmsoft :: frmsoft (QWidget * Eltern): QMainWindow (Eltern), ui (neue Ui :: frmsoft) { ui-> setupUi (this); } frmsoft :: ~ frmsoft () { lösche ui; } // Funktion geklickt Taste void frmsoft :: on_btpresionar_clicked () { ui-> txtMessage-> setText ("Willkommen bei Qt und C ++"); } 

programacion11.jpg

 void frmsoft :: on_btborrar_clicked () { ui-> txtMessage-> clear (); } Wir werden den Code der Schaltfläche ändern, für die wir einen Variablentyp verwenden void frmsoft :: on_btpresionar_clicked () { QString html; html + = "<H2> PREISLISTE </ H2>"; html + = "<H3> Aktualisiert am 26.03.2015 </ H3> <br>"; html + = "<Tabellenrand = 1 Breite = 100%>" "<Thead>" "<tr>" "<th> Code </ th>" "<th> Produkt </ th>" "<th> Stock </ th>" "<th> Preis </ th>" "</ tr>" "</ thead>"; html + = "<tr> <td> 0001 </ td>" "<td> Tastatur </ td>" "<td> 50 </ td>" <td> & euro; 9,90 </ td> "</ tr>" "<tr>" "<td> 0002 </ td>" "<td> Maus </ td>" <td> 30 </ td> <td> & euro; 6,90 </ td> "</ tr>" "<tr>" "<td> 0003 </ td>" "<td> Alles in einem HP Omni </ td>" "<td> 5 </ td>" <td> & euro; 300 </ td> "</ tr>"; html + = "<table>"; html + = "<table>"; ui-> txtMessage-> setText (html); } 

programacion12.jpg

Wenn Sie das Projekt kompilieren möchten, rufen Sie das Menü Erstellen auf und wählen Sie Alle erstellen oder die Tasten Strg + Umschalt + B. Dadurch wird die ausführbare Datei mit all ihren Abhängigkeiten generiert. Wenn Sie den Compiler ändern, können Sie eine Version für eine andere Plattform oder ein anderes Betriebssystem generieren.

Qt verfügt über eine umfangreiche interne Bibliothek und eine Bibliothek von Drittanbietern zum Verwalten von Datenbanken mit Klassen und Tools, einschließlich Unterstützung für Netzwerkprogrammierung, OpenGL, Multimedia, Internet, XML, Datenbanken, Thread-Management und Multitasking sowie API für die Dateimanipulation.

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *