http://alpha-thema-online.uv.ro
Fa-ti si tu propriul forum, pe www.myforum.ro!
Pagina de start a forumului http://alpha-thema-online.uv.ro Autentificare Inregistrare FAQ Membri Cautare

Pagina de start a forumului http://alpha-thema-online.uv.ro » C / C++ / C# » P2: O aplicatie simpla "Hello World" C++
Creaza un subiect nou  Raspunde la subiect Subiectul anterior :: Subiectul urmator 
P2: O aplicatie simpla "Hello World" C++
MesajTrimis: 12/07/2007 21:51 Raspunde cu citat (quote)
Ad_Infinitum
Administrator
Administrator
Ad_Infinitum
Data inscrierii: 23/Iun/2007
Mesaje: 212




P2 este la fel ca P1 numai ca foloseste librariile KDE. La fel, tot codul este in main.cpp:

main.cpp-----------
Citat:

#include <kapp.h>
#include <klocale.h>
#include <qpushbutton.h>

int main( int argc, char **argv )
{
KApplication a( argc, argv , "p2");

QPushButton *hello=new QPushButton( i18n("Hello World !"), 0 );
hello->setAutoResize( TRUE );

QObject::connect( hello, SIGNAL(clicked()), &a, SLOT(quit()) );

a.setMainWidget( hello );
hello->show();

return a.exec();
}



Sa vedem ce se intimpla.

KApplication a( argc, argv , "p2");

Codul de mai sus creeaza un obiect KApplication. KApplication este o clasa care mosteneste QApplication adaugind numeroase optiuni, cum ar fi suportul pentru internationalizare, configurarea aplicatiei etc.

QPushButton *hello=new QPushButton( i18n("Hello World !"), 0 );
hello->setAutoResize( TRUE );

Diferenta dintre codul de mai sus si cel folosit in P1 consta in faptul ca acum nu folosim direct textul "Hello World!", ci rezultatul intors de functia i18n("Hello World !"). Dar ce inseamna acest lucru? Folosim i18n() deoarece aceasta functie va returna sirul de caractere "Hello World!" tradus in limba pe care utilizatorul a ales-o in modulul KControl de setare a limbii. Cu aceasta schimbare aplicatia are suport pentru mai mult de 50 limbi, limbi in care KDE a fost tradus.

Modificarea de mai sus ne obliga sa nu mai folosim o marime fixa a butonului, pentru ca nu stim cite caractere va avea sirul tradus (si n-ar fi elegant daca n-am arata tot sirul din cauza ca butonul este prea mic). Apelind hello->setAutoResize( TRUE ), butonul nostru isi va mari dimensiunea in functie de marimea textului care trebuie afisat.

Restul codului este la fel cu P1.

Traducere de Bogdan Daniel Vatra. Adaptare de Claudiu Costin.
Vezi profilul utilizatorului Trimite mesaj privat

P2: O aplicatie simpla "Hello World" C++
 Pagina de start a forumului http://alpha-thema-online.uv.ro » C / C++ / C#
Nu puteti crea un subiect nou in acest forum
Nu puteti raspunde in subiectele acestui forum
Nu puteti modifica mesajele proprii din acest forum
Nu puteti sterge mesajele proprii din acest forum
Nu puteti vota in chestionarele din acest forum
Ora este GMT + 3 ore  
Pagina 1 din 1  

  
  
 Creaza un subiect nou  Raspunde la subiect  


Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro
    Powered by phpBB © 2001-2004 phpBB Group. phpBB Skin by Vjacheslav Trushkin.