Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Grundlegende Fragen zu Projekttypen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
16.08.2003, 20:21 Uhr
~Einsteiger
Gast


Hallo!

Ich habe gerade angefangen ein Einsteiger-Buch über C++ .NET zu lesen, da ich aber im moment sowieso noch bei MFC bin ist es nicht von Bedeutung, dass es .NET ist. Also, nun meine Fragen:

1) Ich habe noch nicht viel Ahnung von C++, laut meinem Buch trifft aber folgendes zu:
Bei MFC-Anwendungen hat (unter anderem) man die Möglichkeiten SDI, MDI, Dialogbasierend und "Mehrere Fenster auf höchster Ebene".
Was ist nun, wenn ich mehrere Fenster machen will, die alle fast selbstständig arbeiten soll, also nichts gemeinsam haben, außer dass sie eben zum Gleichen Programm gehören: Da stellt sich doch das Problem, dass jedes Fenster eine eigene Menüleiste haben soll, die sich von der der anderen Fenster vollkommen unterscheiden soll. Wie kann man das machen?
Laut meinem Buch ist nämlich keine der MFC-Anwendungstypen dafür brauchbar: SDI hat nur ein Fenster, bei MDI haben die Child-Fenster alle das gleiche Aussehen, Dialogbasiert unterstützt keine Menüleisten und bei "Mehrere Fenster auf obester Ebene" schauen auch alle Fenster gleich aus.

2) Was ist diese MFC eigentlich? Ich weiß nur dass man Anwendungen sowohl mit, als auch ohne MFC schreiben kann.
Welche Variante ist in welchem Fall besser geeignet? (Anmerkung: Ich mag es nicht wenn irgendwas im Hintergrund abläuft und sich vor mir "versteckt". Ich will lieber auch mit den Details in Berührung kommen.)

3) Irgendwie gefällt mir an C++ nicht, dass man bei MFC-SDI-Anwendungen sozusagen ein "Hauptfenster" hat (das beim Programmstart geladen wird), das nur per Code erstellt wird, und dann Dialoge erstellen kann, die man per Designer zusammenbauen kann. Kann man nicht auch entweder alle Fenster per Code erstellen (so in Java, wenn man keine zusätzlichen Designer installiert hat) oder alle Fenster per Designer erstellen (so wie in VB)?

4) Weiß jemand, wo ich ein Beispielprojekt runterladen kann, das so wenig Code wie möglich enthält - gerade soviel dass die Anwendug lauffähig ist und ein leeres Fenster am Bildschirm erzeugt. Bei den Assistenten werden ja auch immer About-Dialoge und Menüleisten erstellt, Dinge die die Sache für einen Anfäher nur verkomplizieren.

Danke für alle Antworten!

mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
17.08.2003, 00:06 Uhr
erpelqueen
Entlein


Also das einzige was ich dir dazu sagen kann ist, MFC muss man, wenn man es wirklich benutzen will, richtig können, und verstehen,

Und das ist für Einsteiger sehr schwer.

Wenn du wirklich noch garkeine Ahnung hast, fang mit reinem C++ und Konsolenanwendungen an.

Und lerne mit Funktionen, Variablen, mKalssen, Arreys, Templates...........
Wenn das wichtigste beherrschst, kannste mit MFC und so anfangen.

Ach ja, MFC heisst Micro$oft Fondatoin Classes, und es sind Klassen, die die verschiedensten Befehle enthaten, um ´halt fast alles , was Windows kann, selber zu proggen.

Aber iss alles sehr sehr sehr komisch.


Mein BEitrag, schau
--
TSchöööööööö ,
How dy How, Ranger Joe
--------------------------------------
www.erpelstore.de.vu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
17.08.2003, 01:27 Uhr
Pablo
Supertux
(Operator)


Was @erpelqueen sagt ist richtig. Wenn du wenig Ahnung von C++ hast, dann lerne lieber zuerst C++. Lerne, wie man Funktionen deklariert, Klassen erzeugt, Pointer, Referencen und sonstige Variablen zu benutzen.

MFC ist nicht nur Microsoft Foundation Class, sondern MFC ist auch ein Team von Programmiern von Microsoft, die die Windows Entwicklung und deren Programmen programmieren. MFC wurde ca. 1990 (wenn ich mich nicht irre) gegründet und hat "eine Standariesierung" für Windows gemacht. MFC enthält eine zahlreiche Hieracrchie von Basisklassen und Klassen, mit denen man Windows programmieren kann. Zum Beispiel sind die Rahmen deiner Windows Fenster das Ergebnis der Klasse CFrame, usw.

MFC ist nicht leicht zu verstehen. MFC deklariert eigene Datentypen und das war für mich am Anfang ziemlich verwirrend. Da kommt FLOAT, UINT, BOOL und andere, die in meinen Programmen keine Kompabilität mit float, unsigend int und bool hatte. Deshalb hab ich das weglassen. Aber wenn du Windows-Anwendungen schreiben willst, dann lohnt es sich MFC zu lernen.

Zur 2. Frage: Windows hat viele Sachen, die nur im Hintergrund laufen. Das ist der Preis für die Benutzerfreundlichkeit Das gefällt mir auch nicht, vor allem weil die Sachen in Windows sehr gut versteckt sind und man braucht sehr viel Zeit, um sie herauszufinden.

Zur 3. Frage: Microsoft Visual C++ 6.0 hat keinen Fenster Editor wie Visual Basic oder Borland JBuilder für Java. Aber VC++ hat ein Dialog-Wizard, ein bisschen vereinfacht, aber man kann auch damit Fenster erzeugen, ohne viel Code schreiben zu müssen. Wenn meine Vermutung nicht falsch ist, dann hat Borland C++ einen solchen Editor wie Visual Basic. Ich bin aber nicht sicher. Das gute, dass man keinen solchen Fenster Editor hat, ist das man seine eigene Fenster selber basteln kann, nicht wie bei VB, wo man nur Windows Fenster machen kann. Man kann tatsächlich das mit VB machen, aber e ist sehr schwer, man muss vor allen tausend API Funktionen benutzen.

Zur 4. Frage: Leider weiß ich nicht. Aber du kannst mit den Wizard ein ganz einfaches Projekt erzeugen, in dem du nur die Basissachen auswählst. Kein MDI, kein SDI Projekt, sondern nur ein Dialog.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 17.08.2003 um 01:28 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
17.08.2003, 10:07 Uhr
Oliver
S2-Pixelgeneral


Wenn du dann ANSI C++ eingermaßen gelernt hast, würde ich erstmal ein bisschen WinAPI lernen, um zu verstehen, was da bei den MFC im Hintergrund abläuft. Das wird dir bei den MFC sicherlich zugute kommen.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
17.08.2003, 10:13 Uhr
~Einsteiger
Gast


Hallo!

Danke erstmal für die Antworten.

Da habe ich wohl vergessen etwas wichtiges in mein Posting zu schreiben:
Es ist nicht so, dass ich gar keine Ahnung von C++ habe, genaugenommen kenne ich mich mit Funktionen, Pointern, etc. sogar schon ziemlich gut aus - solange es Konsolenanwendungen sind. Nur bei der Windows-Programmierung hab ich keine Ahnung, und genau dafür habe ich mir jetzt das Buch gekauft.
Nun ist das Buch in 3 Teile eingeteilt, und die Autorin schreibt dass man selbst auswählen kann bei welchem Teil man zum Lesen anfängt:

1) Nicht verwaltete Windows-Programmierung ohne MFC
2) Nicht verwaltete Windows-Programmierung mit MFC
3) Verwaltete Windows-Programmierung (.NET)

Was würdet ihr mit empfehlen? Mit welchem Teil soll ich anfangen?

Danke!

mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
17.08.2003, 10:19 Uhr
Oliver
S2-Pixelgeneral


Wie gesagt, fang erstmal mit WinAPI an, damit du die grundlegenden Dinge lernst. Wenn du aber dann richtige komplexe Windowsanwendungen schreiben wills, wird es wohl Jahre dauern bis du ein Programm fertig hast, dafür gibt es MFC. Da ich mal davon ausgehe das, das "Nicht verwaltete Windows-Programmierung ohne MFC" WinAPI sein soll, würde ich in der Reihenfolge anfangen, die du eben aufgezählt hast.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
17.08.2003, 20:33 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,

Zitat:
~Einsteiger postete
.....
1) Nicht verwaltete Windows-Programmierung ohne MFC
2) Nicht verwaltete Windows-Programmierung mit MFC
3) Verwaltete Windows-Programmierung (.NET)

Was würdet ihr mit empfehlen? Mit welchem Teil soll ich anfangen?


1) ... ist eine API-Anwendung.
dann 2) und schließlich 3)
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: