ГУИ је скраћеница за графички кориснички интерфејс. Они су суштински део развоја модерног софтвера. Графички кориснички интерфејси омогућавају програмерима да креирају апликације са којима корисници могу лако да комуницирају. Ц++ је моћан програмски језик који се широко користи у развоју сложених софтверских система. У овом чланку ћемо истражити како да направимо ГУИ у Ц++ користећи различите библиотеке и оквире.
Шта је ГУИ?
Графички кориснички интерфејс, или ГУИ, омогућава корисницима да комуницирају са рачунаром користећи визуелне елементе као што су дугмад, менији и дијалошки оквири. ГУИ пружају једноставан за коришћење и интуитиван интерфејс који омогућава корисницима да брзо и ефикасно обављају задатке. Они се широко користе у апликацијама као што су веб претраживачи, медијски плејери и канцеларијски пакети.
Зашто Ц++ за ГУИ развој?
Ц++ је моћан програмски језик. Уз помоћ Ц++, можемо развити сложене софтверске системе, укључујући ГУИ. Неки од разлога зашто је Ц++ популаран избор за развој ГУИ укључују:
Библиотеке и оквири за Ц++ ГУИ развој
Постоји толико много доступних библиотека и оквира за Ц++ ГУИ развој. Хајде да погледамо неке од најпопуларнијих опција.
1. Кт
Кт је најпопуларнији ГУИ алат отвореног кода. Широко се користи за развој вишеплатформских ГУИ апликација. Пружа свеобухватан скуп алата и библиотека за прављење модерних ГУИ апликација, укључујући подршку за унос додиром и покретима, напредну графику и мултимедију.
мултиплексирање
Програм 1:
#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(); }
Излаз:
Објашњење
Овај Ц++ програм користи функцију спринтф за форматирање стринга и функцију принтф за штампање форматираног стринга на конзоли. Декларише неке променљиве, додељује им вредности, форматира стринг и шаље га на конзолу.
2. вкВидгетс
вкВидгетс је још један популаран ГУИ алат за више платформи. Пружа скуп алата и библиотека за изградњу модерних ГУИ апликација. Подржава широк спектар платформи, укључујући Виндовс, Линук и мацОС.
нп.меан
Програм 2:
#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; }
Излаз:
Објашњење
како конвертовати из стринга у инт
Ово је основни вкВидгетс код који креира прозор са статусном траком и приказује текст 'Хелло Ворлд'. Класа ХеллоВорлдАпп је дефинисана за имплементацију апликације. Функција ОнИнит() иницијализује апликацију и креира нови оквир са наведеним насловом. Функција ЦреатеСтатусБар() креира статусну траку на дну прозора, а СетСтатусТект() поставља текст који ће бити приказан у статусној траци. Коначно, функција Схов() приказује прозор, а СетТопВиндов() поставља оквир као прозор највишег нивоа.
3. ФЛТК
То је скраћеница од Фаст Лигхт Тоолкит. То је вишеплатформски ГУИ алат. Пружа лаган и брз скуп алата и библиотека за прављење ГУИ апликација. То је популаран избор за изградњу апликација које захтевају мали отисак или имају строге захтеве за перформансама.
Програм 3:
#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(); }
Излаз:
Објашњење
листноде јава
Овај код користи флтк библиотеку за креирање прозора са означеним оквиром који каже „Здраво, свет!“. Кутија има подебљани курзив фонт, величине 36 и ознаку у сенци. Прозор је величине 300 к 180 пиксела и приказан је на екрану помоћу функције схов(). Функција рун() покреће главну петљу догађаја за руковање корисничким уносом и држи прозор видљивим све док га корисник не затвори.
4. СДЛ
То је скраћеница од Симпле ДирецтМедиа Лаиер. То је мултимедијална библиотека на више платформи. Пружа скуп алата и библиотека за прављење игара и мултимедијалних апликација. Укључује аудио, видео, улазне уређаје и подршку за умрежавање, што га чини разноврсном опцијом за прављење мултимедијалних ГУИ апликација.
Програм 4:
#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; }
Излаз:
Објашњење
јава сортирање листе низова
Ово је основни СДЛ програм написан у Ц језику. Иницијализује СДЛ библиотеку користећи СДЛ_Инит(), креира прозор помоћу СДЛ_ЦреатеВиндов() и улази у бесконачну петљу користећи вхиле(1). Петља не ради ништа и само чека да корисник затвори прозор или изађе из програма. Ако постоји грешка при покретању СДЛ-а, штампа се порука о грешци помоћу функције принтф(). Програм враћа 0 по успеху.
Закључак
Ц++ пружа моћан и ефикасан програмски језик за развој ГУИ апликација. Има широк спектар библиотека и оквира. Програмери имају много опција када је у питању прављење њихових апликација. Било да програмер одабере Кт, вкВидгетс, ФЛТК или СДЛ, они могу креирати богате и модерне ГУИ апликације које раде на различитим платформама.