Jump to content
MrGrj

[tutorial] qt

Recommended Posts

  • Active Members

Zilele astea m-am apucat sa fac o aplicatie in QT. Cu ocazia asta ma gandeam sa fac un tutorial aici, despre acest program si basic usage.

Pentru inceput, ce este QT ?

Este un mediu de programare (un framework) cross-platform care are la baza limbajul C++. Exista "binding-uri" si pentru alte limbaje de programare (Java, Python, C#, Ruby, etc). Probabil cele mai cunoscute sunt Jambi (binding-ul pentru Java), PyQt (binding-ul pentru Python) si Qyoto (binding-ul pentru C# si alte limbaje .Net). Mai simplu, este varianta Visual Studio pentru Ubuntu. Desigur poate fii rulat si pe Windows/MAC la fel de bine. QT ofera suport pentru rularea aplicatiilor desktop + permite dezvoltarea de aplicatii complete, punand la dispozitia programatorului API-uri pentru lucrul cu interfete grafice, fire de executie, programare client-server, acces la baze de date, lucrul cu fisiere XML, animatie, integrare cu OpenGL, procesare de imagini, etc. El vine la pachet cu urmatoarele tool-uri: "QT Assistant , QT Designer, QT Creator si QT Linguist."

Cele mai populare aplicatii scrise folosind QT (pe care le stiu eu): Google Earth, KDE si versiunea de Linux a clientului Skype.

Cum il instalam ? ( voi vorbi doar despre instalarea pe UNIX/LINUX - eu asta folosesc)

 aptitude install qtcreator 

sau

 apt-get install qtcreator 

Bun, acum avem instalate toate modulele pe care le-am enumerat mai sus.

Pentru a creea primul program in QT Creator urmati urmatorii pasi:

1. Click pe QT Creator.

Exemplu

2. File > New File or Project

3. Aveti grija sa fie selectata optiunea Qt GUI Application > Choose

4. Dati un nume proiectului si selectati path-ul unde vreti sa vi se salveze proiectele > Next

5. Ar trebui sa vedeti ceva de genul:

Exemplu

6. Dati next.

7. Finish.

Felicitari, ati creeat primul vostru proiect in QT.

8.

Exemplu

Acum, vreau sa mentionez ca pentru a putea creea aplicatii trebuie sa aveti un minim (un minim mai mare) de cunostinte necesare in C++.

Cum realizam prima aplicatie in QT ?

Voi prezenta un exemplu usor si basic pentru a putea fi inteles de toata lumea.

In ultima imagine, observam in partea stanga un meniu cu: Welcome, Edit, Desing, Debug, Projects, Help.

1. Click pe Design.

2. Dati scroll sau folositi Search-ul pentru a gasi "LABEL" apoi faceti drag & drop in MainWindow - "chenarul gri".

Exemplu

3. Dublu click pe TextLabel si pune-ti ce nume doriti. Ex: "Caii nu danseaza"

4. Faceti din nou drag & drop. De data asta la "Push Button" > dublu click pe el si denumiti-l cum doriti. Ex: "Sa mori tu ?"

Exemplu

5. Apasati Ctrl + R pentru a vedea rezultatul. Momentan, programul nu face nimic, so let's put that big ass to work :)

6. In meniul din partea stanga apasati pe edit. Veti vedea aici: Forms/Headers/Sources. practic, aici se afla tot programul nostru(fisiere .h si .cpp). Dublu-click pe MainWindow.cpp

Exemplu

Observati ca aici avem urmatorul cod:


#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}

MainWindow::~MainWindow()
{
delete ui;
}

7. Forms > Dublu-click pe mainwindow.ui ( aici intrati de fiecare data cand aveti nevoie sa adaugati/eliminati ceva din GUI). Click dreapta pe buton > Go to slot > Clicked.

8. Daca reveniti din nou la MainWindow.cpp veti observa ca au fost adaugate urmatoarele linii de cod:


void MainWindow::on_pushButton_clicked()
{

}

9. Presupunem ca din nefericire caii nu danseaza si vrem sa modificam textul din interiorul labelului asa ca adaugam in functia noastra urmatoarele linii de cod:


void MainWindow::on_pushButton_clicked()
{
[b]ui->label->setText("Ba nu danseaza, dobitocule !");[/b]
}

10. CTRL+R si astepti ca programul sa se builduiasca. Apasati pe buton si veti vedea ca textul din label se va schimba.

Enjoy it.

  • Downvote 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...