Hi, ich habe bisher ein paar kleinere Programme in VB programmiert, die mit Microcontrollern kommunizieren, welche ich in C programmiert habe. Logischerweise wäre es ja praktisch, wenn ich beides in C programmiere. Nun habe ich mir mal VC++ von MS angesehen. Und da stellt sich mir die Frage, ob es vielleicht einen "einfacheren" Weg gibt, VC++ zu lernen. Ist es in VC++ tatsächlich so kompliziert, ein Programm mit grafischer Benutzeroberfläche zu schreiben? Als Beispiel, in VB ist die Oberfläche in "fünf Minuten" fertig. Als ich im VC++ von MS einfach mal ein Programm angelegt habe, wurde ich gleich mit mehreren Dateien erschlagen --> als Auswahl habe ich "typisches Hallo Welt-Programm" gewählt, um zu sehen, wie das aufgebaut ist. In VB gibt es das ganze Zeug nicht, was da offenbar in VC++ nötig ist. Gibt es einen VC++ Compiler einer anderen Firma, bei dem das nicht so ist, oder ist das bei allen gleich? In dem Fall bleib ich nämlich bei VB... Ralf
Erstmal: VC++ ist keine Programmiersprache, sondern der Name einer Entwicklungsumgebung (Visual C++) von Microsoft. Die Programmiersprache heist schlicht und ergreifend C++. Daher ist auch die Frage: "Gibt es einen VC++ Compiler einer anderen Firma" sinnlos, da VC++ nun mal unweigerlich mit Microsoft verknüpft ist. Das wäre so, als ob Du fragen würdest: Gibt es auch noch eine andere Firma die BMW's baut. Zur Programmierung: Nun ja. In VC++, wenn mann mit der MFC programmiert gibt es im wesentlichen 2 Möglichkeiten: Entweder man baut eine Dialog-basierte Applikation oder man benutzt das Document/View Modell. Dialogbasierte Applikationen sind ähnlich einfach zu machen wie in VB (obwohl auch hier der Komfort von VB nie erreicht wird), während man im Document/View Modell schon recht genau wissen sollte wie's geht und was man tut. Dafür habe ich allerdings dort Möglichkeiten, die Du mit VB so nicht einfach kriegen wirst: Mehrere Fenster die gleichzeitig dieselben Daten auf unterschiedliche Weise visualisieren und sich alle bei Änderungen in einem Fenster updaten; Meherere gleichzeitig geöffnete Dokumente, etc. VB ist bei all den Dingen die GUI-Lastig sind weit im Vorteil. D.h. wenn du nur ein paar simple Berechnungen da drin machst und ansonsten beschäftigt sich dein Program in 80% des Codes nur mit der Oberfläche: bleib bei VB.
Also, mir gehts eigentlich nur darum, eine Benutzeroberfläche einfach zu erstellen, und das Programm in C++ zu schreiben. Meine Frage wäre in dem Fall halt, ob es vielleicht einen Compiler gibt, bei dem es so abläuft wie in VB: Einfach die Oberfläche zeichnen, und mit dem Programm loslegen, aber so, wie man eine Konsolen-Anwendung programmiert. Also einfach eine main-Routine anlegen, und loslegen. Ich bin mir nicht sicher, ob ich meine Frage verständlich formuliert habe... Ralf
Der Borland C++ Builder hat einer sehr komfortable GUI-Erstellung, ählich der von VB. Ältere Versionen bekommt man ab und an mal bei Ebay. Ich hab den C++ Builder 5 und mit dem kann man schon einiges machen. Eine einfache Benutzeroberfläche hat man auch im Handumdrehen zusammengeklickt. Das Problem ist jedoch, dass Borland die Weitereitwicklung dieser Programmierumgebung leider weitestgehend eingestellt hat.
Schau dir mal QT von Trolltech an. http://www.trolltech.com/ Da gibt es eine sehr guten GUI Designer für. Alles frei erhältlich und das Beste, die Applikation läuft unter Windows, Mac und Linux.
Wie gut der GUI-Designer von QT ist, sieht man ja an den ganzen verkrüppelten Linux-GUIs unter KDE. Ich kann mir zumindest nicht vorstellen, dass so viele Programmierer was an den Augen haben.
... und wenn's auch kommerziell genutzt werden soll, ohne horrende Lizenzgebühren abzudrücken, dann ist ein Blick auf wxWidgets interessant. Damit geschriebene Applikationen laufen auch auf Mac, Windows und Linux. Dafür gibt es verschiedene GUI-Builder, ein zwar nicht kostenloser, aber ziemlich günstiger ist DialogBlocks. Recht viele verbreitete Anwendungen sind mit wxWidgets geschrieben, allen voran das "Neue Terminalprogramm für Windows" aus dem Forum hier, ansonsten der OpenSource-Audio-Editor Audacity, ein OpenSource-Schaltplan- und Layout-Programm (https://www.mikrocontroller.net/forum/read-1-332716.html#new) und vieles mehr. Es gibt ein recht gutes Buch, das einen in die Feinheiten der Programmierung mit wxWidgets einweiht, und das ist seit kurzem als freier PDF-Download verfügbar: http://www.wxwidgets.org/book/ http://www.phptr.com/content/images/0131473816/downloads/0131473816_book.pdf
Hat man denn bei den genannten Alternativen auch diesen horrenden zusätzlichen Code für eine Oberfläche nötig wie bei MS? Ich hatte ganz zu Anfang gedacht, dass VC++ das gleiche ist wie VB, nur eben C++. Bei VB ist ja keine einzelne zusätzliche Code-Zeile nötig, d.h. sämtlicher Code bezieht sich nur auf die vom Programmierer gewünschte Funktion. Wer das "Typische Hallo Welt-Programm" in VC++ von MS über den Wizard anlegen lässt, weiss was ich meine... Ralf
Ich habe bisher viel in VB6.0 und in noch mehr in VC++6.0 gemacht, und muß dem OP zustimmen, was die Unterschiede zw. den beiden Umgebungen bzgl. GUI- Entwicklung angeht. Ich kann mir auch nicht vorstellen, dass wxWidgets oder QT an den Komfort von VB herankommen. Mittlerweile arbeite ich mit C# unter 2005, und kann nur sagen: für mich ist ein Traum in Erfüllung gegangen! GUI wie VB (nur besser), Sprache wie C++ (nur besser). Lediglich die Akzeptanz bei den Anwendern leidet noch etwas, ist aber vermutlich nur eine Frage der Zeit (wie immer bei MS ;-)). Gruß, Matthias
Hallo Ralf, ich stimme Mathias vollkommen zu. Es gibt auch eine Entwicklungs umgebung die Kostenlos ist: http://www.icsharpcode.net/OpenSource/SD/ oder hier die VSC# Version von M$ für ein Jahr umsonst: http://www.microsoft.com/germany/msdn/vstudio/express/default.mspx und wenn das Programm vernünftig Programmiert wurde funktioniert es mit Mono sogar unter Linux: http://www.mono-project.de/home/ http://www.mono-project.com/Main_Page Gruß Uwe
Danke für die Beiträge, weiter so ;-) @MNR: Das heisst dann, dass C# das ist, was ich suche? Okay, auch auf die Gefahr hin, mich lächerlich zu machen: WAS IST C#? Was sind die Unterschiede zu C/C++? Ralf
Um es mal ganz einfach zu machen hier ein Paar anlaufseiten auf Deutsch. Tutorials: http://www.mycsharp.de/guide/home/index.html?http%3A//www.mycsharp.de/guide/home/home.html http://www.galileocomputing.de/openbook/csharp/ erste Hilfe: http://www.mycsharp.de/wbb2/index.php http://glengamoi.com/forums/ Gruß Uwe
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.