Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 31.05.2007, 13:36 Titel: |
|
|
Im C++-Forum unter WinAPI gibt es einen Download-Link für das SDK und eine Installationsanleitung. Also- ich habs geschafft, das ans Laufen zu bringen. Habs aber wieder runtergeschmissen, weil es dermaßen viel Speicherplatz belegt und nicht einmal einen Resourcen-Editor hat.
Borland-C++ oder der Borland-C-Builder bringen auch die MFC-Header mit. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 31.05.2007, 17:34 Titel: |
|
|
Also ich kann eigentlich die wxWidgets empfehlen für C++. Du kannst dir die gleich mit modifizierter DevC++-IDE samt MinGW-Compiler von der Sourceforge-Site runterladen. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 31.05.2007, 17:40 Titel: |
|
|
Sooo weit daneben lag ich mit meiner selbstgemachten def gar nicht
Code: |
CreateWindow(_
ICiv_window_login_name, ICiv_window_login_title, WS_OVERLAPPEDWINDOW,_
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,_
NULL, NULL, NULL, NULL
|
richtig war:
Code: |
dim as HWND MeinFenster = CreateWindow(_
ICiv_window_login_name, ICiv_window_login_title, WS_OVERLAPPEDWINDOW,_
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,_
NULL, NULL, GetModuleHandle(NULL), NULL)
|
 _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
c.m.obrecht

Anmeldungsdatum: 09.03.2006 Beiträge: 377 Wohnort: Hofstetten SO, CH
|
Verfasst am: 01.06.2007, 15:33 Titel: |
|
|
Borland unf MFC? Dort gibt es doch das VCL.. jedoch der C++ BuilderX Personal Edition hat nichts derartiges.
Ach so ging das SDK; ich schaffte das nicht wirklich. Weiss auch nicht wieso... aber das mit dem modifizierten Compiler klingt gut! _________________ ...längre blomstre gamle nord... |
|
Nach oben |
|
 |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 01.06.2007, 21:12 Titel: |
|
|
@c.m.obrecht
VCL ist die Borland-Version von Container-Klassen für die WinAPI. Die MFC ist auch bei den Borland-Produkten mit dabei, meist in einem eigenen Ordner namens MFC (zumindest war es bei meinem Borland-C++ 5.22 so, und beim Borland-C-Builder 4.0). Such mal nach den Dateien, die afx im Namen enthalten (afxres, afxdll o. ä.) Natürlich bietet Borland dafür keine Online-Hilfe an. |
|
Nach oben |
|
 |
c.m.obrecht

Anmeldungsdatum: 09.03.2006 Beiträge: 377 Wohnort: Hofstetten SO, CH
|
Verfasst am: 03.06.2007, 12:21 Titel: |
|
|
Ja da kommt eine riesen Menge, .h und .rc - Dateien, ale im BuilderX - Ordner. Das ist die MFC? Wie binde ich die denn ein? _________________ ...längre blomstre gamle nord... |
|
Nach oben |
|
 |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 03.06.2007, 12:32 Titel: |
|
|
Ja, das ist vermutlich die MFC (ich kenne den BuilderX nicht, daher kann ich das nicht 100%ig sagen).
Einbinden: normalerweise mit #include... Aber welche Dateien Du genau einbinden mußt, weiß ich nicht (auf jeden Fall .h-Dateien), ich arbeite nicht mit MFC. |
|
Nach oben |
|
 |
c.m.obrecht

Anmeldungsdatum: 09.03.2006 Beiträge: 377 Wohnort: Hofstetten SO, CH
|
Verfasst am: 03.06.2007, 13:42 Titel: |
|
|
ahaaa, ja ich habe auch noch nie etwas mit mfc gemacht und auch kaum ein kleines Beispielprogramm etc. gefunden. _________________ ...längre blomstre gamle nord... |
|
Nach oben |
|
 |
c.m.obrecht

Anmeldungsdatum: 09.03.2006 Beiträge: 377 Wohnort: Hofstetten SO, CH
|
Verfasst am: 03.06.2007, 14:28 Titel: |
|
|
Zitat: | Also ich kann eigentlich die wxWidgets empfehlen für C++. Du kannst dir die gleich mit modifizierter DevC++-IDE samt MinGW-Compiler von der Sourceforge-Site runterladen.
|
habe ich gemacht, sieht toll aus. Aber: wenn ich mit dem eingebauten RAD-Tool ein Fenster erzeuge (also Projekt "leeres wxWidgets-Projekt" wähle) und das ausführen möchte erscheint schonwieder eine Fehlermeldung: [Linker Error] undefined reference to `WinMain@16' _________________ ...längre blomstre gamle nord... |
|
Nach oben |
|
 |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 03.06.2007, 22:41 Titel: |
|
|
c.m.obrecht hat Folgendes geschrieben: | ahaaa, ja ich habe auch noch nie etwas mit mfc gemacht und auch kaum ein kleines Beispielprogramm etc. gefunden. |
Dann empfehle ich Dir, mal mit "MFC Tutorial" zu googeln. Es wird Dich erschlagen.
Zitat: | Fehlermeldung: [Linker Error] undefined reference to `WinMain@16' |
Offensichtlich ist der Linker noch auf API eingestellt, dann erwartet er eine Funktion WinMain, die Du nicht definiert hast (so ne Funktion ist offenbar bei Widgets nicht üblich). |
|
Nach oben |
|
 |
c.m.obrecht

Anmeldungsdatum: 09.03.2006 Beiträge: 377 Wohnort: Hofstetten SO, CH
|
Verfasst am: 06.06.2007, 21:18 Titel: |
|
|
Ja habe den Fehler gefunden; man darf nicht "empty wxWidgets Project" wählen sondern "wxFrame" dann geht es. Nur die Message Box hab ich nicht einmal bekommen; muss diese Klassen mal etwas kennen Darf man z.B. bei on_cklci eines Buttons nicht einfach die Message Box wie von WinAPI bekannt nehmen? Das klappte nicht...
Ist ansonsten schon praktisch, wie C# ähnlich mit den Events usw. _________________ ...längre blomstre gamle nord... |
|
Nach oben |
|
 |
Lutz Ifer Grillmeister

Anmeldungsdatum: 23.09.2005 Beiträge: 555
|
Verfasst am: 10.06.2007, 15:39 Titel: |
|
|
nur so als nachtrag, falls es jemanden interessiert:
Ich habe vor, mein WinApi-Tutorial an die neueste Version von FreeBasic anzupassen (damit auch alles hübsch sofort lauffähig bleibt), wieder auf meine Webseite hochzuladen, und, *trara!* weiterzuschreiben.
Kleines Manko: Könnte aber noch n bisschen dauern, bis auf der Seite wieder was geht, aber keine Sorge, ich kündige es groß an.
Gruß
Lutz Ifer
edit:
http://lutzifer.freebasic.de/de/winapi.php ist online, und enthält im Moment zumindest mal ytwinkys CHM-Compilierte Version des altes Tutorials. _________________ Wahnsinn ist nur die Antwort einer gesunden Psyche auf eine kranke Gesellschaft.
Zuletzt bearbeitet von Lutz Ifer am 12.06.2007, 17:07, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 10.06.2007, 16:33 Titel: |
|
|
Ich bin trotzdem , dass Lutz Ifer weiterschreibt.  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 10.06.2007, 17:23 Titel: |
|
|
Mao hat Folgendes geschrieben: | Ich bin trotzdem , dass Lutz Ifer weiterschreibt.  |
Ich natürlich auch! ich wollte eigentlich nur sagen, dass es da nicht sonderlich viel an sourcen zu überarbeiten gibt.  _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
Verfasst am: 20.06.2007, 21:25 Titel: |
|
|
sorry dat ich den thread nochma pushe
hätte ich doch bloß vb
prob: passwort feld will nicht
src:
Code: |
#include "windows.bi"
const ICiv_window_login_name = "ICiv - Login"
const ICiv_window_main_name = "ICiv - Main"
declare function ICiv_window_login_func(byval hWnd as HWND, byval message as UINTEGER,_
byval wParam as WPARAM, byval lParam as LPARAM) as LRESULT
dim as WNDCLASS windowclass
with windowclass
.style = CS_HREDRAW or CS_VREDRAW
.lpfnWndProc = ProcPtr(ICiv_window_login_func)
.cbClsExtra = 0
.cbWndExtra = 0
.hInstance = GetModuleHandle(NULL)
.hCursor = LoadCursor(NULL, IDC_ARROW)
.hIcon = LoadIcon(NULL, IDI_APPLICATION)
.hbrBackground = GetStockObject(LTGRAY_BRUSH)
.lpszClassName = StrPtr(ICiv_window_login_name)
.lpszMenuName = NULL
end with
RegisterClass @windowclass
dim as HWND MeinFenster = CreateWindow(_
ICiv_window_login_name, "ICiv - Login", WS_OVERLAPPEDWINDOW,_
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,_
NULL, NULL, GetModuleHandle(NULL), NULL)
dim as HWND Password = CreateWindowEx(_
WS_Ex_left, "ICiv - Login", ES_PASSWORD,_
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,_
NULL, NULL, GetModuleHandle(NULL), NULL)
ShowWindow MeinFenster, SW_NORMAL
UpdateWindow MeinFenster
ShowWindow Password, SW_NORMAL
UpdateWindow Password
dim as MSG Nachricht
do while GetMessage(@Nachricht, NULL, 0, 0) <> 0
DispatchMessage @Nachricht
loop
end Nachricht.wParam
'''''''''''''''''''''''''''''''''''''''
''''' GUI FUNCTIONS BEGIN HERE ''''''''
'''''''''''''''''''''''''''''''''''''''
function ICiv_window_login_func(byval hWnd as HWND, byval message as UINTEGER,_
byval wParam as WPARAM, byval lParam as LPARAM) as LRESULT
if message = WM_DESTROY then
PostQuitMessage 0
return 0
else
return DefWindowProc(hWnd, message, wParam, lParam)
end if
end function |
es kommen nur dämliche comperrors  _________________ If hilfreicher_Beitrag then klick(location.here)
Klick |
|
Nach oben |
|
 |
Elektronix
Anmeldungsdatum: 29.06.2006 Beiträge: 742
|
Verfasst am: 21.06.2007, 16:26 Titel: |
|
|
Welche Fehler denn? Wie sollen wir erfahren, was falsch ist, wenn Du nicht sagst, was Dein Compiler bemängelt? |
|
Nach oben |
|
 |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 22.06.2007, 16:45 Titel: |
|
|
Könnte was damit zutun haben?? |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
|