App installieren
How to install the app on iOS
Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
GUI in C?
- Ersteller T_T
- Erstellt am
Hallo! Bin gerade dabei nen bisschen C zu lernen, aber irgendwie finde ich nirgends eine ergiebige Quelle zum Thema GUI in C. Hat da jemand vielleicht einen "Literaturtip" (besser Internetseite, kostet nichts ).
Bei Java geht das ja ganz komfortabel, da kann man dann hier und dort einen button hinzufügen und die Listener entsprechend konfigurieren etc, aber in C scheint es mir fast so als sei GUI ein "Tabuthema"?
Bei Java geht das ja ganz komfortabel, da kann man dann hier und dort einen button hinzufügen und die Listener entsprechend konfigurieren etc, aber in C scheint es mir fast so als sei GUI ein "Tabuthema"?
PuckPoltergeist
Grand Admiral Special
Du scheinst hier etwas durcheinander zu bringen. Eine Programmiersprache hat mit einem GUI erstmal nix zu tun. Prinzipiell eignet sich jede Sprache dazu, eine grafische oder auch textgebundene Oberfläche zu erstellen, die eine Sprache mehr, die andere weniger. Beim JDK von Sun sind entsprechende Klassenbibliotheken schon mitgeliefert, so dass sich der Entwickler darum keine Gedanken machen muss. Grundsätzlich sind diese Bibliotheken aber nicht Bestandteil der Sprache.
Anbieter von integrierten Entwicklungsumgebungen liefern auch zumeist einen großen Satz an entsprechenden Bibliotheken mit, auf die der Entwickler zurückgreifen kann. So sind z.B. bei Delphi oder C++-Builder von Borland oder bei Visual Studio von MS entsprechende Klassen enthalten.
Es gibt aber auch von speziellen Compilern vollkommen unabhängige Bibliotheken für GUIs, wie z.B. Qt, wxWidgets, GTK oder ncurses. Dies dürfte genau das sein, wonach du hier suchst. Die ersten drei genannten Bibliotheken realisieren graphische Oberflächen (und noch einiges mehr), während ncurses textbasiert ist. Sie lassen sich alle in C ansprechen, wobei Qt und wxWidgets in C++ geschrieben, und in erster Linie dafür ausgelegt sind. GTK und ncurses sind in C geschrieben, lassen sich aber auch via C++ ansprechen.
Grundsätzlich würde ich dir aber empfehlen, erstmal mit Console-Anwendungen zu beginnen, gerade bei C.
Anbieter von integrierten Entwicklungsumgebungen liefern auch zumeist einen großen Satz an entsprechenden Bibliotheken mit, auf die der Entwickler zurückgreifen kann. So sind z.B. bei Delphi oder C++-Builder von Borland oder bei Visual Studio von MS entsprechende Klassen enthalten.
Es gibt aber auch von speziellen Compilern vollkommen unabhängige Bibliotheken für GUIs, wie z.B. Qt, wxWidgets, GTK oder ncurses. Dies dürfte genau das sein, wonach du hier suchst. Die ersten drei genannten Bibliotheken realisieren graphische Oberflächen (und noch einiges mehr), während ncurses textbasiert ist. Sie lassen sich alle in C ansprechen, wobei Qt und wxWidgets in C++ geschrieben, und in erster Linie dafür ausgelegt sind. GTK und ncurses sind in C geschrieben, lassen sich aber auch via C++ ansprechen.
Grundsätzlich würde ich dir aber empfehlen, erstmal mit Console-Anwendungen zu beginnen, gerade bei C.
Jep, fang erstmal einfach an. QT wird dich mit seinem Funktionsumfang sonst erstmal umhauen. GTK ist am Anfang erstmal deutlich einfacher, und es gibt auch Ports auf C++ (GTKmm - also das ist auch objektorientiert).
In der Liste von Puck fehlt noch die windoofs GUI, das ist auch nur eine von vielen.
In der Liste von Puck fehlt noch die windoofs GUI, das ist auch nur eine von vielen.
PuckPoltergeist
Grand Admiral Special
GTK ist am Anfang erstmal deutlich einfacher,
Ich bin der Meinung, dass GTK durch seine Inkonsistenz eher schwieriger zu überschauen ist als Qt.
PuckPoltergeist
Grand Admiral Special
Was ist denn in Qt daran umständlich? Und wenn ich es wirklich schnell und einfach haben will, dann nehme ich den Designer dafür.
PuckPoltergeist
Grand Admiral Special
Womit erschlägt es mich denn? Hatte bis jetzt nicht diesen Eindruck.
Hab jetzt keine Lust das auszudiskutieren . In GTK hat ein Hello World Prog 5 Zeilen oder so, da kann QT einfach net mithalten. QT erschlägt dich mit haufenweise Klassen, Namespaces usw. GTK ist da einfach mehr straight forward.
PuckPoltergeist
Grand Admiral Special
Nun ja, ist halt Ansichtssache. C++-Programme sind Prinzip bedingt (etwas) umfangreicher als ihre C-Pendants. Ich finde aber, dass das gerade der Übersichtlichkeit und dem Verständnis dient. Muss halt jeder Entwickler für sich entscheiden, was er als praktischer empfindet.
Hi, danke für Eure Antworten. So neu bin ich in C auch nicht, hab ja wiegesagt Java-Erfahrung und programmiere hobbymäßig Mikrocontroller in C (nur ist da halt recht wenig mit GUI, Bibliotheken und Co zu machen ).
Nun habe ich aber noch einmal eine Frage: Qt und GTK kenne ich nur aus der Linux-Welt, unter Windows bleiben mir also nur kommerzielle Produkte wie V.Studio oder Borland?
Nun habe ich aber noch einmal eine Frage: Qt und GTK kenne ich nur aus der Linux-Welt, unter Windows bleiben mir also nur kommerzielle Produkte wie V.Studio oder Borland?
Nein, Dev-C++ geht zB. auch. Die Windoofs GUI ist auch nur ein Programmiermodell, das sich mal irgendwer ausgedacht hat, genauso wie Qt und GTK - und es lässt sich auch ähnlich programmieren (bindest ein paar header ein, linkst eine lib dazu und fertig).
Such mal nach GDI Programmierung oder so, müsste dann passen. Das geht zB. schon in die Richtung: http://www.functionx.com/win32/Lesson10.htm
Aber erwarte nicht, dass die windoofs GUI überaus komfortable zu programmieren ist .
Such mal nach GDI Programmierung oder so, müsste dann passen. Das geht zB. schon in die Richtung: http://www.functionx.com/win32/Lesson10.htm
Aber erwarte nicht, dass die windoofs GUI überaus komfortable zu programmieren ist .
PuckPoltergeist
Grand Admiral Special
Aber erwarte nicht, dass die windoofs GUI überaus komfortable zu programmieren ist .
Da es aber auch Qt, GTK und wxWidgets für Windows gibt, kann man die natürlich auch alternativ zur direkten Programmierung des Windaus-GUI nehmen. Der große Vorteil daran ist, dass die Programm dann auch portabel sind.
GDI(+) braucht man für 08/15-GUIs aber eigentlich nicht.Such mal nach GDI Programmierung oder so, müsste dann passen. Das geht zB. schon in die Richtung: http://www.functionx.com/win32/Lesson10.htm
@T_T
Wenn Du unter Windows wirklich direkt mit der Win32-API GUIs programmieren willst, sieh Dir mal das an:
http://www.relisoft.com/win32/index.htm
http://www.winprog.org/tutorial
An Deiner Stelle würde ich aber eher zu einem der oben genannten Frameworks greifen, ist einfach komfortabler, mächtiger, übersichtlicher.
- Mitglied seit
- 16.11.2001
- Beiträge
- 21.665
- Renomée
- 1.249
- Standort
- München
- Aktuelle Projekte
- World Community Grid
- Lieblingsprojekt
- Folding@Home
- Meine Systeme
- AMD Ryzen 9 5950X
- BOINC-Statistiken
- Folding@Home-Statistiken
- Prozessor
- AMD Ryzen 9 5950X
- Mainboard
- ASUS TUF Gaming X570-Pro [WI-FI]
- Kühlung
- be quiet! Shadow Rock 3
- Speicher
- 4x 16GB DDR4-3200 Corsair Vengeance LPX
- Grafikprozessor
- ASRock Radeon RX 550 Phantom Gaming Aktiv 2GB
- Display
- LG 27UL850-W, 27"
- SSD
- Samsung 980 PRO 2TB, Samsung 840 EVO 500GB
- HDD
- Seagate Barracuda 7200.14 3TB SATA3
- Optisches Laufwerk
- Samsung SH-S183A SATA schwarz (im externen Gehäuse)
- Gehäuse
- be quiet! Silent Base 802 schwarz
- Netzteil
- be quiet! Straight Power 11 Platinum 550W
- Tastatur
- Logitech G613 Lightspeed
- Maus
- Logitech M510
- Betriebssystem
- Ubuntu Linux 22.04
- Webbrowser
- Vivaldi
- Internetanbindung
-
▼100 MBit
▲40 MBit
Hallo! Habe jetzt den Borland C++Builder bekommen. prinzipiell genau sowas wie ich gesucht habe, leider macht der standardmäßig aber nur C++-Projekte mit GUI? Wenn ich File->New und dann c-File auswähle habe ich eine leere .c-Datei. Aber wie erstelle ich ein neues C-Projekt mit Form?
Ray
Grand Admiral Special
- Mitglied seit
- 11.11.2001
- Beiträge
- 3.141
- Renomée
- 20
- Standort
- An der Spree
- Mein Laptop
- Kein Notbuch
- Prozessor
- Intel Core2Quad Q9650@3.8, AMD Ryzen 9 under test
- Mainboard
- DFI LANPARTY LT X48-T2R + MIPS DFI LANparty P35/X38/X48 Series Freezer Set Nickel
- Kühlung
- EK-Supreme
- Speicher
- 4 x 2 GB OCZ PC2 8500 C5 Reaper@500
- Grafikprozessor
- XFX 8800 GTS(G92) 512 + EK-FC8800 GT/GTS(g92)
- Display
- TFT HP w2408h, 1920x1200
- SSD
- Samsung 840 Pro 256 GB
- HDD
- 2 x WD Black 1TB
- Optisches Laufwerk
- Samsung SH-D163A, Samsung SH-S183A
- Soundkarte
- Creative X-FI Xtreme Gamer Fatality Pro
- Gehäuse
- Modified Lian Li PC201B
- Netzteil
- Seasonic S12 550W
- Betriebssystem
- Win7U-64
- Webbrowser
- FireFox
- Verschiedenes
- Thermochill PA120.3 Triple Radiator , Liang DDC , 11 years old mainboard, still running!
Borland C++ Builder und Visual Studio bieten kein GUI Framework für C an!
Die Frameworks basieren immer auf einer Klassenbibliothek, also C++, welche mehr oder weniger elegant auf der Windows API aufsetzen.
Wer in C eine Windows-GUI programmieren will, muss entweder eine (z.B. der bereits im Thread genannten) Bibliothek benützen, oder direkt auf der Win-API aufsetzen. Letzteres verlangt einiges an Einarbeitung. Begriffe wie Windows-Nachrichtenschleife, Nachrichtenverabeitung, Ereignissteuerung, Resourcenscripts etc. wollen dazu verstanden werden.
Ein gutes Buch wie z.B, der Petzhold http://www.amazon.de/exec/obidos/ASIN/3860631888/qid%3D1141477351/sr%3D8-4/ref%3Dpd%5Fka%5F4/028-4359991-8874952, ist bestimmt hilfreich. Das Buch geht jedenfalls auf sehr viele Themen der WIN API-Programmierung (insbesondere die GUI) ein. Habe ich selbst Ende der 90er benutzt.
Aber warum willst Du unbedingt in C eine GUI basteln?
Für meinen Fall war das damals ganz ok, brauchte ein scrollbares Textfenster, ein einfaches Menü und ein paar Dialogboxen, von denen ich eine sogar automatisch per Programm erzeugt habe. Das lief damals sogar erst unter Win16 und wurde dann auf Win32 portiert.
Heute und vor allem dann, wenn die Anwendung etwas komplexer ist, würde ich für die GUI ein C++ Framework benützen. Mit dem Borland C++ Builder sollte das ganz easy gehen.
Ciao,
Ray
Die Frameworks basieren immer auf einer Klassenbibliothek, also C++, welche mehr oder weniger elegant auf der Windows API aufsetzen.
Wer in C eine Windows-GUI programmieren will, muss entweder eine (z.B. der bereits im Thread genannten) Bibliothek benützen, oder direkt auf der Win-API aufsetzen. Letzteres verlangt einiges an Einarbeitung. Begriffe wie Windows-Nachrichtenschleife, Nachrichtenverabeitung, Ereignissteuerung, Resourcenscripts etc. wollen dazu verstanden werden.
Ein gutes Buch wie z.B, der Petzhold http://www.amazon.de/exec/obidos/ASIN/3860631888/qid%3D1141477351/sr%3D8-4/ref%3Dpd%5Fka%5F4/028-4359991-8874952, ist bestimmt hilfreich. Das Buch geht jedenfalls auf sehr viele Themen der WIN API-Programmierung (insbesondere die GUI) ein. Habe ich selbst Ende der 90er benutzt.
Aber warum willst Du unbedingt in C eine GUI basteln?
Für meinen Fall war das damals ganz ok, brauchte ein scrollbares Textfenster, ein einfaches Menü und ein paar Dialogboxen, von denen ich eine sogar automatisch per Programm erzeugt habe. Das lief damals sogar erst unter Win16 und wurde dann auf Win32 portiert.
Heute und vor allem dann, wenn die Anwendung etwas komplexer ist, würde ich für die GUI ein C++ Framework benützen. Mit dem Borland C++ Builder sollte das ganz easy gehen.
Ciao,
Ray
Zuletzt bearbeitet:
Ähnliche Themen
- Antworten
- 0
- Aufrufe
- 3K
- Antworten
- 469
- Aufrufe
- 77K
- Antworten
- 29
- Aufrufe
- 13K
- Antworten
- 73
- Aufrufe
- 18K