programovanie GUI a c++
programovanie GUI a c++
rad by som vedel, co pouzivate a co sa pouziva pre vytvaranie GUI a aky programovaci jazyk? alebo neviem ako to nazvat, som v tom uplne novy.
Co som vyhladaval na nete, tak existuju nejake kniznice alebo frameworky ako QT, wxWidgets, GTK++, atd... mnoho z nich je okrem Windows aj pre ine OS. a tusim aj VS2013 ma nejaky ten UI editor. Potom som narazil na MFC, WinAPI, WLC, STL, a neviem co este, bolo toho vela ktore tusim su len pre Win.
Nakoniec som narazil aj na moznost pisat UI v inom jazyku a samotny kod programu v c++, len problem je, ze nemam ani tusenia ako to prepojit medzi sebou a ci to vobec ide. Napr. vo VS2013 ked vytvorim projekt pre win32 aplikaciu (v c++), tak napr. mozem vytvarat len c++ kod a este zopar nejakych prog. jazykov (teraz z hlavy neviem). Ale ked vytvorim projekt v C#, ktory uz ma pekny UI editor, v nom mozem pisat kod dokonca aj v c++, ale co som sa docital, tak to nie je ciste c++. Alebo som cital aj o moznosti vytvarania projektu len v C# a samotne jadro v c++ pomocou dll kniznic.
Ide mi o to, ze chcel by som si vytvorit program, ktory by mal UI ako Steam (od Valve) - steam ma plne vlastne UI - nevyzera to ako Windows okno ale ma vlastne graficke zobrazenie. A malo by to zvladat aj rozne ine graficke veci, nieco ako photoshop, alebo nieco taketo http://themeforest.net/item/materialize ... e/11446068
Ja sa ucim c++ ako samouk a rad by som si uz aj skusal nejake graficke rozhrania pre svoje male programi a nie v konzolovej aplikacii. No a kedze je toho vela a mam konkretne ciele, rad by som sa poradil dopredu.
A dopredu chcem upozornit, ze QT, wxWidgeds, U++ a GTK a jeho odnoze - tym by som sa rad vyhol. No ak ich pouzivate, napiste a aj skusenosti s nimi a pripadne bol by som rad ak ukazete nejake vlastne prace - staci mi obrazok programu, aplikacie ak je to mozne.
Co som vyhladaval na nete, tak existuju nejake kniznice alebo frameworky ako QT, wxWidgets, GTK++, atd... mnoho z nich je okrem Windows aj pre ine OS. a tusim aj VS2013 ma nejaky ten UI editor. Potom som narazil na MFC, WinAPI, WLC, STL, a neviem co este, bolo toho vela ktore tusim su len pre Win.
Nakoniec som narazil aj na moznost pisat UI v inom jazyku a samotny kod programu v c++, len problem je, ze nemam ani tusenia ako to prepojit medzi sebou a ci to vobec ide. Napr. vo VS2013 ked vytvorim projekt pre win32 aplikaciu (v c++), tak napr. mozem vytvarat len c++ kod a este zopar nejakych prog. jazykov (teraz z hlavy neviem). Ale ked vytvorim projekt v C#, ktory uz ma pekny UI editor, v nom mozem pisat kod dokonca aj v c++, ale co som sa docital, tak to nie je ciste c++. Alebo som cital aj o moznosti vytvarania projektu len v C# a samotne jadro v c++ pomocou dll kniznic.
Ide mi o to, ze chcel by som si vytvorit program, ktory by mal UI ako Steam (od Valve) - steam ma plne vlastne UI - nevyzera to ako Windows okno ale ma vlastne graficke zobrazenie. A malo by to zvladat aj rozne ine graficke veci, nieco ako photoshop, alebo nieco taketo http://themeforest.net/item/materialize ... e/11446068
Ja sa ucim c++ ako samouk a rad by som si uz aj skusal nejake graficke rozhrania pre svoje male programi a nie v konzolovej aplikacii. No a kedze je toho vela a mam konkretne ciele, rad by som sa poradil dopredu.
A dopredu chcem upozornit, ze QT, wxWidgeds, U++ a GTK a jeho odnoze - tym by som sa rad vyhol. No ak ich pouzivate, napiste a aj skusenosti s nimi a pripadne bol by som rad ak ukazete nejake vlastne prace - staci mi obrazok programu, aplikacie ak je to mozne.
-
harrison314
Hardcore addict
- Príspevky: 8217
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: programovanie GUI a c++
Cital som aj posledny odstavec, no moja rada pre teba pouzi Qt a Qt Creator (ak hces zostat pri C++), v nom je klikaci tool na vytvorenie GUI.
MFC rozhodne nepouivaj, je vo visual studiu kvoli legacy projektom.
No v C# (vseobecne .Net) vie pouzivat a napojit sa na nativne kniznice, ale pokial nerobis s grafikou, draivrami, alebo nepotrebujes rieist nejake naozaj nizkourvnove veci, tak je jednoduchsie si napisat vsteko v C# ( a mas na vyber WinForms alebo WPF).
WinAPI - na jednoduche okno by bolo v nom treba asi viac kodu ako na celu tvou aplikaciu
STL - to nema s gui nic spolocne.
WPF.
MFC rozhodne nepouivaj, je vo visual studiu kvoli legacy projektom.
No v C# (vseobecne .Net) vie pouzivat a napojit sa na nativne kniznice, ale pokial nerobis s grafikou, draivrami, alebo nepotrebujes rieist nejake naozaj nizkourvnove veci, tak je jednoduchsie si napisat vsteko v C# ( a mas na vyber WinForms alebo WPF).
WinAPI - na jednoduche okno by bolo v nom treba asi viac kodu ako na celu tvou aplikaciu
STL - to nema s gui nic spolocne.
Ide mi o to, ze chcel by som si vytvorit program, ktory by mal UI ako Steam (od Valve) - steam ma plne vlastne UI - nevyzera to ako Windows okno ale ma vlastne graficke zobrazenie. A malo by to zvladat aj rozne ine graficke veci, nieco ako photoshop, alebo nieco taketo http://themeforest.net/item/materialize ... e/11446068
WPF.
Re: programovanie GUI a c++
Qt, GTK, wxWidgets, U++, WinAPI - to všetko sú API na vytváranie tzv. natívnych GUI aplikácií (t.j. UI tvojej aplikácie bude vyzerať v každom operačnom systéme mierne inak, ale bude sa podobať na ostatné aplikácie v danom operačnom systéme - budú mu "natívne").Oblak napísal: Ide mi o to, ze chcel by som si vytvorit program, ktory by mal UI ako Steam (od Valve) - steam ma plne vlastne UI - nevyzera to ako Windows okno ale ma vlastne graficke zobrazenie. A malo by to zvladat aj rozne ine graficke veci, nieco ako photoshop, alebo nieco taketo http://themeforest.net/item/materialize ... e/11446068
Ty však chceš niečo, čo nebude vyzerať natívne. Najčastejšie takéto GUI využívajú hry, ale využíva ho napr. aj Blender, či už tebou spomínané aplikácie. GUI frameworky na takéto použitia sami vykresľujú na obrazovku widgety, sami odchytávajú eventy, etc. Mnohé hry si GUI v minulosti programovali sami (aby nevyzeralo natívne k OS, ale aby ladilo tematicky s hrou), dnes však na to existujú frameworky ako CeGUI či libRocket.
Na ďalšie čítanie:
http://www.gamedev.net/blog/1682/entry- ... -terrible/
http://stackoverflow.com/questions/4845 ... -framework
http://www.reddit.com/r/gamedev/comment ... ames_in_c/
Teda ak chceš mať ne-natívne GUI, musíš použiť nejakého window-managera (SFML, SDL, ...) a nejakú kompatibilnú GUI knižnicu (CeGUI, libRocket...). Neodporúčam písať knižnicu sám. Nejaké buttony, okienka, textInputy sa dajú ešte, ale ak chceš niečo viac, je to celkom veľký zabijak času.
Re: programovanie GUI a c++
vdaka za odpovede
harrison:
prave na WPF som zabudol. To je to co som hovoril s tym, ze je mozne v tom pouzit aj c++ kod, ale je riadeny (managed). Cize nie je to ciste c++ pokial viem. A prave ze budem potrebovat robit aj s grafikou (ale nie do takej miery ako photoshop) a "draivrami".
Sær:
na CEGui som narazil pri hladani, ale vsetko co si mi napisal, je pre hry a prave ja chcem robit aplikacie. Ale ten CEGui vyzera dobry aj pre aplikacie a rozmyslam nad nim, len neviem ci zvlada aj take veci ako vektorovu grafiku a ci je pre aplikacie s komplexnejsim GUI vhodne.
harrison:
prave na WPF som zabudol. To je to co som hovoril s tym, ze je mozne v tom pouzit aj c++ kod, ale je riadeny (managed). Cize nie je to ciste c++ pokial viem. A prave ze budem potrebovat robit aj s grafikou (ale nie do takej miery ako photoshop) a "draivrami".
Sær:
na CEGui som narazil pri hladani, ale vsetko co si mi napisal, je pre hry a prave ja chcem robit aplikacie. Ale ten CEGui vyzera dobry aj pre aplikacie a rozmyslam nad nim, len neviem ci zvlada aj take veci ako vektorovu grafiku a ci je pre aplikacie s komplexnejsim GUI vhodne.
-
harrison314
Hardcore addict
- Príspevky: 8217
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: programovanie GUI a c++
Tak radcej povedz co chces robit.Oblak napísal:prave na WPF som zabudol. To je to co som hovoril s tym, ze je mozne v tom pouzit aj c++ kod, ale je riadeny (managed). Cize nie je to ciste c++ pokial viem. A prave ze budem potrebovat robit aj s grafikou (ale nie do takej miery ako photoshop) a "draivrami".
Lebo s tvojho popisu nie je jasne o co ma ist, tak sa ti neda seriozne poradit.
Re: programovanie GUI a c++
Ok, v buducnosti by som chcel vytvorit vlastny notacny program aj s midi seqvencerom s prehravanim videa, audia a pouzivanie virtualnych nastrojov a efektov, ktory nebude limitovany len na klasicku notaciu ale bude umoznene vselijako manipulovat s notaciou - podobnost s grafickymi program kde mozes vselijako ohybat vektorovu krivku atd.. + vytvaranie vlastnych notacnych znaceni. To by som chcel mat v peknom vlastnom dynamickom UI ktory by nepripominal windows ani IOS aplikaciu. Dynamicke mam na mysli, ze napr. prejdem cez ikonu a ta sa plynule rozsvieti, ked sa vysunie lista tak tiez plynule a nie skokovo a podobne.
-
harrison314
Hardcore addict
- Príspevky: 8217
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: programovanie GUI a c++
To v pohode zvlada ciste WPF, aj vektorovu grafiku, dokonca jednoduche 3D animacie. ma prezentacnu vrtvu odelenu od view modelov, takzeje to aj cistejsie, anko ine technologie.Oblak napísal:Ok, v buducnosti by som chcel vytvorit vlastny notacny program aj s midi seqvencerom s prehravanim videa, audia a pouzivanie virtualnych nastrojov a efektov, ktory nebude limitovany len na klasicku notaciu ale bude umoznene vselijako manipulovat s notaciou - podobnost s grafickymi program kde mozes vselijako ohybat vektorovu krivku atd.. + vytvaranie vlastnych notacnych znaceni. To by som chcel mat v peknom vlastnom dynamickom UI ktory by nepripominal windows ani IOS aplikaciu. Dynamicke mam na mysli, ze napr. prejdem cez ikonu a ta sa plynule rozsvieti, ked sa vysunie lista tak tiez plynule a nie skokovo a podobne.
Re: programovanie GUI a c++
Ak to chces len pre Windows, chod do WPF + C#.
Ak to chces multiplatformovo, tak Qt + C++.
Ak to chces multiplatformovo, tak Qt + C++.
Re: programovanie GUI a c++
vdaka za rady, nakoniec som sa rozhodol skusit CEGui, nejako mi je sympaticky a navyse je priamo pre c++ a ked to nevyjde nasiel som Juce, ktory je pre nekomercne uceli zadarmo, navyse ako stvoreny pre to, co chcem.
no a ak by niekto mal co napisat, skusenosti a tak, tak nech kludne napise. Rad si vypocujem nazory.
no a ak by niekto mal co napisat, skusenosti a tak, tak nech kludne napise. Rad si vypocujem nazory.