Jump to content
MrGrj

[tutorial] qt

Recommended Posts

  • Active Members
Posted

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

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...