Fenster ruft zusätzlich die Konsole auf
-
Elektronix schrieb:
Hast vermutlich in den Compiler-Einstellungen nicht eindeutig GUI angegeben.
Danke

Kleine Frage: Lohnt es sich noch mit Winapi GUIS zu machen oder sollte man lieber gleich zu plattformübergreifenden und aktuellen libs greifen?
Weil ich gehört habe ,dass die WInApi nicht mehr weiter entwickelt werden soll.Wäre nett wenn mich jemand kurz aufklären kann was hier sache ist ;).
-
Also so viel steht mal fest: Microsoft kann es sich nicht leisten die WinAPI einfach in der nächsten Version auszubauen. Denn dann würden eine Menge Programme nicht mehr funktionieren. Besser gesagt alle die nicht .NET benutzen. Es stimmt, dass die WinAPI durch .NET ersetzt werden soll, aber so plötzlich können die das nicht machen.
-
player4245 schrieb:
Also so viel steht mal fest: Microsoft kann es sich nicht leisten die WinAPI einfach in der nächsten Version auszubauen. Denn dann würden eine Menge Programme nicht mehr funktionieren. Besser gesagt alle die nicht .NET benutzen. Es stimmt, dass die WinAPI durch .NET ersetzt werden soll, aber so plötzlich können die das nicht machen.
Naja würdet ihr einem Anfänger dann von der WinApi abraten und sich lieber "zukunftssicheren" und plattformunabhängigen gui libs zuwenden?
Ist ja irgendwie nicht sehr sinnvoll auf etwas aufzubauen wo man ziemlich sicher weiß ,dass es ersetzt wird in naher zukunft?
-
Tja jeder hat seinen eigenen Geschmack. Deswegen ist eine Empfehlung immer schwierig. Ich bin der Meinung, dass es einfach keine ordentlich GUI-lib gibt.
Entweder ist das Aussehen zu befremdlich, das C++ Design alt und schrecklich oder die lib ist so voll von unnötigem Zeug oder Altlasten (wxWidgets), dass man später mehr Überbau als eigentliches Programm hat.
Mit der WinAPI hat man später zumindest unter Windows das beste Aussehen und im eigentlichen Programm keinerlei Überbau. Was dir wichtig ist musst du selbst entscheiden. Ich benutze wenns Plattformunabhängig sein soll manchmal FLTK.
-
Ok danke dir vielmals

Übrigens falls andere noch das gleiche Problem haben sollten
-
Wollte dich jetzt aber nicht bekehren, das ist nur meine persönliche Meinung
.
-
player4245 schrieb:
Wollte dich jetzt aber nicht bekehren, das ist nur meine persönliche Meinung
.
Hab noch ne kleine Frage will deswegen keinen neuen Thread aufmachen.
Ich arbeite gerade das tutorial von http://www.henkessoft.de/C++/WinAPI/WinAPI Kapitel 1 bis 6/api3.htm durch.Nun möcht ich aber wenn ich auf einen Button Optionen klicke ,dass sich ein neues Fenster öffnet.(ne msg box krieg ich hin, aber ein eigenes fenster nicht)
WinMain -> Hauptfenster deklariert (genau eines dieser Art möcht ich nochmals öffnen)
WndProc -> Button deklariert welcher auf dem Hauptfenster ist.
Buttonclick wird mit WM_COMMAND abgefangen.
Versuche ich nun aber in WndProc beim Buttonklick ein neues Fenster zu öffnen mit:
hwndoption=CreateWindow("option", "Optionen",WS_OVERLAPPEDWINDOW,0,0,300,200,hwnd,NULL,((LPCREATESTRUCT) lParam)->hInstance,NULL); ShowWindow (hwndoption, SW_SHOWNORMAL); UpdateWindow (hwndoption);stürzt das Programm sofort ab.
Also wie und wo muss ich die Fenster deklarieren ,dass ich auf einen "Buttonklick" ein neues Hauptfenster öffnet.?
-
Ist die Fensterklasse registriert?
-
player4245 schrieb:
Es stimmt, dass die WinAPI durch .NET ersetzt werden soll, ...
Ich möchte mal eine offizielle Quelle sehen, welche sowas sagt.
.Net wrappt immer noch den grössten Teil der WinAPI für seine eigenen Funktionen. Wenn man die WinAPI entfernen würde, würden nicht mal mehr .Net Programme funktionieren. Auch muss man aus .Net immer wieder mal WinAPI Aufrufe durchführen über P/Invoke.
Wo sich .Net wirklich von der WinAPI getrennt hat, ist im Bereich des GUIs mit WPF. WPF setzt auf DirectX und nicht mehr auf die WinAPI. Allerdings ist die WinAPI nicht nur eine GUI API! Die WinAPI ist die zentrale Schnittstelle zum Betriebsystem Windows in so gut wie allem. Ich sehe keine Möglichkeit, wie man diese Schnittstelle durch .Net ersetzen sollte ...
Deshalb: Offizielle Quelle bitte

Grüssli
-
du willst bestimmt einen dialog machen sieh mal hier nach:
http://pronix.linuxdelta.de/C/win32/win32_5.shtml
-
player4245 schrieb:
Es stimmt, dass die WinAPI durch .NET ersetzt werden soll, aber so plötzlich können die das nicht machen.
Ich würde mich freuen, wenn dieser Unfug nicht immer weiter kolportiert wird.
Und wie soll man die Basis ersetzen auf die .NET aufbaut?Nur mal als Anmerkung: Keine der neuen Techniken in Windows 7 baut auf .NET auf!
Die meisten nutzen COM! Und klassisches C++ und viele sind einfach auch über pures C nutzbar.Wenn man sich umgekehrt den Krampf ansehen muss, mit dem diese ganzen Windows 7 Funktionen in .NET integriert werden wird mir schlecht...
