logo

C++ GUI

GUI apzīmē grafisko lietotāja interfeisu. Tās ir būtiska mūsdienu programmatūras izstrādes sastāvdaļa. Grafiskās lietotāja saskarnes ļauj izstrādātājiem izveidot lietojumprogrammas, ar kurām lietotāji var viegli mijiedarboties. C++ ir jaudīga programmēšanas valoda, ko plaši izmanto sarežģītu programmatūras sistēmu izstrādē. Šajā rakstā mēs izpētīsim, kā izveidot GUI programmā C++, izmantojot dažādas bibliotēkas un ietvarus.

Kas ir GUI?

Grafiskā lietotāja saskarne jeb GUI ļauj lietotājiem mijiedarboties ar datoru, izmantojot vizuālos elementus, piemēram, pogas, izvēlnes un dialoglodziņus. GUI nodrošina viegli lietojamu un intuitīvu saskarni, kas lietotājiem ļauj ātri un efektīvi veikt uzdevumus. Tos plaši izmanto tādās lietojumprogrammās kā tīmekļa pārlūkprogrammas, multivides atskaņotāji un biroja komplekti.

Kāpēc C++ GUI izstrādei?

C++ ir spēcīga programmēšanas valoda. Ar C++ palīdzību varam izstrādāt sarežģītas programmatūras sistēmas, tostarp GUI. Daži no iemesliem, kāpēc C++ ir populāra izvēle GUI izstrādei, ir šādi:

    Veiktspēja:C++ ir augstas veiktspējas valoda, kas var ātri un efektīvi izpildīt kodu. Tas ir ideāli piemērots GUI izstrādei.Vairāku platformu atbalsts:C++ var kompilēt vairākām operētājsistēmām. Tā ir lieliska izvēle, lai izveidotu starpplatformu GUI lietojumprogrammas.Plašs bibliotēku un ietvaru klāsts:C++ ir pieejams milzīgs bibliotēku un ietvaru klāsts GUI izstrādei. Tas sniedz izstrādātājiem daudz iespēju, kad runa ir par lietojumprogrammu izveidi.

Bibliotēkas un ietvari C++ GUI izstrādei

C++ GUI izstrādei ir pieejamas tik daudz bibliotēku un ietvaru. Apskatīsim dažas no populārākajām iespējām.

1. Qt

Qt ir vispopulārākais atvērtā koda GUI rīku komplekts. To plaši izmanto, lai izstrādātu starpplatformu GUI lietojumprogrammas. Tas nodrošina visaptverošu rīku un bibliotēku komplektu modernu GUI lietojumprogrammu izveidei, tostarp atbalstu uz pieskārienu un žestiem balstītai ievadei, uzlabotai grafikai un multividei.

mašīnraksta komplekts

1. programma:

 #include #include int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); char myoutput [60]; int stringlength, x=4, y=10; stringlength = sprintf(myoutput, '%d plus %d equals %d', x, y, x+y); printf ('[%s] is a string that is %d characters long.
', myoutput, stringlength); return a.exec(); } 

Izvade:

C++ GUI

Paskaidrojums

Šī C++ programma izmanto sprintf funkciju, lai formatētu virkni, un printf funkciju, lai formatētu virkni drukātu konsolē. Tas deklarē dažus mainīgos, piešķir tiem vērtības, formatē virkni un izvada to konsolei.

2. wxWidgets

wxWidgets ir vēl viens populārs starpplatformu GUI rīku komplekts. Tas nodrošina rīku un bibliotēku kopu modernu GUI lietojumprogrammu veidošanai. Tā atbalsta plašu platformu klāstu, tostarp Windows, Linux un macOS.

java virkne satur

2. programma:

 #include 'wx/wx.h' #include 'wx/wxprec.h' #include 'hello.h'IMPLEMENT_APP(HelloWorldApp)bool HelloWorldApp::OnInit() { wxFrame *frame = new wxFrame((wxFrame*) NULL, -1, _T('Hello wxWidgets World')); frame->CreateStatusBar(); frame->SetStatusText(_T('Hello World')); frame->Show(true); SetTopWindow(frame); return true; } 

Izvade:

C++ GUI

Paskaidrojums

string to date konvertēt

Šis ir pamata wxWidgets kods, kas izveido logu ar statusa joslu un parāda tekstu 'Hello World'. HelloWorldApp klase ir definēta lietojumprogrammas ieviešanai. Funkcija OnInit() inicializē lietojumprogrammu un izveido jaunu rāmi ar norādīto nosaukumu. Funkcija CreateStatusBar() izveido statusa joslu loga apakšā, un SetStatusText() iestata tekstu, kas jāparāda statusa joslā. Visbeidzot, funkcija Show() parāda logu, un SetTopWindow() iestata rāmi kā augstākā līmeņa logu.

3. FLTK

Tas apzīmē Fast Light Toolkit. Tā ir starpplatformu GUI rīkkopa. Tas nodrošina vieglu un ātru rīku un bibliotēku komplektu GUI lietojumprogrammu veidošanai. Tā ir populāra izvēle būvniecībām, kurām nepieciešama neliela platība vai kurām ir stingras veiktspējas prasības.

3. programma:

 #include #include #include using namespace fltk; int main(int argc, char **argv) { Window *window = new Window(300, 180); window->begin(); Widget *box = new Widget(20, 40, 260, 100, 'Hello, World!'); box->box(UP_BOX); box->labelfont(HELVETICA_BOLD_ITALIC); box->labelsize(36); box->labeltype(SHADOW_LABEL); window->end(); window->show(argc, argv); return run(); } 

Izvade:

C++ GUI

Paskaidrojums

mašīnraksta slēdzis

Šis kods izmanto fltk bibliotēku, lai izveidotu logu ar iezīmētu lodziņa logrīku, kas saka 'Sveika, pasaule!'. Kastītei ir trekns slīpraksts, 36 izmērs un ēnas etiķete. Loga izmērs ir 300 x 180 pikseļi, un tas tiek parādīts ekrānā, izmantojot funkciju Show(). Funkcija Run () sāk galveno notikumu cilpu, lai apstrādātu lietotāja ievadi, un saglabā logu redzamu, līdz lietotājs to aizver.

4. SDL

Tas nozīmē Simple DirectMedia Layer. Tā ir starpplatformu multivides bibliotēka. Tas nodrošina rīku un bibliotēku komplektu spēļu un multivides lietojumprogrammu veidošanai. Tas ietver audio, video, ievades ierīces un tīkla atbalstu, padarot to par daudzpusīgu iespēju ar multivides bagātām GUI lietojumprogrammām.

4. programma:

 #include #include #include int main(int argc, char *argv[]) { // returns zero on success else non-zero if (SDL_Init(SDL_INIT_EVERYTHING) != 0) { printf('error initializing SDL: %s
', SDL_GetError()); } SDL_Window* win = SDL_CreateWindow('GAME', SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 1000, 1000, 0); while (1) ; return 0; } 

Izvade:

C++ GUI

Paskaidrojums

arraylist java kārtot

Šī ir pamata SDL programma, kas rakstīta C valodā. Tas inicializē SDL bibliotēku, izmantojot SDL_Init(), izveido logu, izmantojot SDL_CreateWindow(), un ievada bezgalīgu cilpu, izmantojot while(1). Cilpa neko nedara un tikai gaida, kamēr lietotājs aizvērs logu vai iziet no programmas. Ja, inicializējot SDL, rodas kļūda, tiek izdrukāts kļūdas ziņojums, izmantojot funkciju printf(). Programma atgriež 0 par panākumiem.

Secinājums

C++ nodrošina jaudīgu un efektīvu programmēšanas valodu GUI lietojumprogrammu izstrādei. Tam ir plašs bibliotēku un ietvaru klāsts. Izstrādātājiem ir daudz iespēju, veidojot savas lietojumprogrammas. Neatkarīgi no tā, vai izstrādātājs izvēlas Qt, wxWidgets, FLTK vai SDL, viņi var izveidot bagātīgas un modernas GUI lietojumprogrammas, kas darbojas dažādās platformās.