Maske
-
julchen81 schrieb:
@CStoll: dich kenn ich doch *gg*
Ja, die Welt ist klein - und dieses Forum noch kleiner

Diese Funktion hat es scheinbar bisher nicht gegeben, das Programm funktioniert aber trotzdem, und das ergibt für meine Wenigkeit grad keinen Sinn...?
Und was hatte sich bisher gemeldet, wenn du den fraglichen Button angeklickt hast? (btw, was für eine ID wird angezeigt, wenn du mit der rechten Taste draufklickst und "Properties" auswählst?)
-
Code? Aber sicher doch:
#include "stdafx.h" #include "WZ_KOR_IN_OUT_DLG.h" #include "WZ_KOR_IN_OUT_DLGDlg.h" //************************************************************************ #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif //************************************************************************ // CWZ_KOR_IN_OUT_DLGApp //************************************************************************************************* BEGIN_MESSAGE_MAP(CWZ_KOR_IN_OUT_DLGApp, CWinApp) //{{AFX_MSG_MAP(CWZ_KOR_IN_OUT_DLGApp) // HINWEIS - Hier werden Mapping-Makros vom Klassen-Assistenten eingefügt und entfernt. // Innerhalb dieser generierten Quelltextabschnitte NICHTS VERÄNDERN! //}}AFX_MSG ON_COMMAND(ID_HELP, CWinApp::OnHelp) END_MESSAGE_MAP() //************************************************************************************************* // CWZ_KOR_IN_OUT_DLGApp Konstruktion //************************************************************************************************* CWZ_KOR_IN_OUT_DLGApp::CWZ_KOR_IN_OUT_DLGApp() { // ZU ERLEDIGEN: Hier Code zur Konstruktion einfügen // Alle wichtigen Initialisierungen in InitInstance platzieren } //************************************************************************************************* // Das einzige CWZ_KOR_IN_OUT_DLGApp-Objekt //************************************************************************************************* CWZ_KOR_IN_OUT_DLGApp theApp; //************************************************************************************************* // //************************************************************************************************* BOOL CWZ_KOR_IN_OUT_DLGApp::InitInstance() { AfxEnableControlContainer(); // Standardinitialisierung // Wenn Sie diese Funktionen nicht nutzen und die Größe Ihrer fertigen // ausführbaren Datei reduzieren wollen, sollten Sie die nachfolgenden // spezifischen Initialisierungsroutinen, die Sie nicht benötigen, entfernen. #ifdef _AFXDLL Enable3dControls(); // Diese Funktion bei Verwendung von MFC in gemeinsam genutzten DLLs aufrufen #else Enable3dControlsStatic(); // Diese Funktion bei statischen MFC-Anbindungen aufrufen #endif // Da das Dialogfeld geschlossen wurde, FALSE zurückliefern, so dass wir die // Anwendung verlassen, anstatt das Nachrichtensystem der Anwendung zu starten. OpenChangeDlg(); return TRUE; //FALSE; } //************************************************************************************************* // //************************************************************************************************* void CWZ_KOR_IN_OUT_DLGApp::OpenChangeDlg() { CWZ_KOR_IN_OUT_DLGDlg dlg; m_pMainWnd = &dlg; int nResponse = dlg.DoModal(); if (nResponse == IDOK) { // ZU ERLEDIGEN: Fügen Sie hier Code ein, um ein Schließen des // Dialogfelds über OK zu steuern } else if (nResponse == IDCANCEL) { // ZU ERLEDIGEN: Fügen Sie hier Code ein, um ein Schließen des // Dialogfelds über "Abbrechen" zu steuern } }Machine schrieb:
Wenn der Button die ID "IDOK" hat, dann gibt es standardmäßig vom Dialog aus die Funktion...
Wieso finde ich diese Funktionen dann im gesamten Code nicht? Das ist mir ein Rätsel, gibt's da irgendwie versteckte Dateien oder so was??
-
die funktion ist dann in der dialogklasse, also CDialog, definiert. dann kannst du sie nicht finden, da sie nicht in deinen klassen steckt, sondern in den coreklassen...
-
Machine schrieb:
die funktion ist dann in der dialogklasse, also CDialog, definiert. dann kannst du sie nicht finden, da sie nicht in deinen klassen steckt, sondern in den coreklassen...
Aber das wie geht denn das??
Jetzt noch mal konkret:
In meiner Maske gibt es ein Feld, indem erscheint eine Nummer, die aus einer Datei ausgelesen worden ist. Diese Nummer kann ích dann evtl. verändern. Die evtl. neue Nummer wird dann in eine andere Datei geschrieben.Was davon kann ich dann in meinem Code lesen, wenn schon nicht die Funktion, die dahintersteckt?
Wie bekomme ich die Verknüpfung zwischen Datei, Erscheinen eines Wertes davon in der Maske und neuer Datei? Davon muss ich doch im Code was lesen können??Hat jemand zufällig eine ganz ganz simple Maske, z.B. bestehend aus nur einem Textfeld und einem OK-Button, das dann oben beschriebene Aktion durchführt? Würd extremst gerne dazu mal den Code sehen.
Mein mir zur Verfügung gestelltes Programm ist so aufgebläht, es fällt mir schwer, darin das Wesentliche zu finden.grüßle
-
ach jetz versteh ich.. wenn du das sehen willst, dann musst du in die klasse WZ_KOR_IN_OUT_DLGDlg schauen. du hast den code von der klasse CWZ_KOR_IN_OUT_DLGApp gepostet...
-
julchen81 schrieb:
Hat jemand zufällig eine ganz ganz simple Maske, z.B. bestehend aus nur einem Textfeld und einem OK-Button, das dann oben beschriebene Aktion durchführt? Würd extremst gerne dazu mal den Code sehen.
grüßle
Mach dir doch einfach eine neue Anwendung (Dialogbasiert) und dann machst du ein Edit drauf und einen Button und versuchst es nochmal.

Dann sind die Klassen überschaubarer.

-
Machine schrieb:
ach jetz versteh ich.. wenn du das sehen willst, dann musst du in die klasse WZ_KOR_IN_OUT_DLGDlg schauen. du hast den code von der klasse CWZ_KOR_IN_OUT_DLGApp gepostet...
auch da find ich das nicht... hab echt den kompletten Ordner danach durchsucht.
estartu schrieb:
Mach dir doch einfach eine neue Anwendung (Dialogbasiert) und dann machst du ein Edit drauf und einen Button und versuchst es nochmal.

Dann sind die Klassen überschaubarer.

Damit mach ich morgen weiter.
Herzliches Dankeschön an alle!!
Und natürlich einen schönen Feierabend
-
Guten Morgen,
hab jetzt da ein bisschen rumgebastelt, aber auch bei einem sehr einfachen Fenster wird der Code gleich dermaßen lang... es müssten dann Funktionen überschrieben werden usw.
Also wenn's da nicht irgendeinen gigantisch vereinfachenden Trick gibt, dann nutzt es wohl nichts: ich muss zuerst fiter in C++ werden.
Soweit ich sehen kann, führt kein Weg daran vorbei.ODER???

-
ich denke ja...
-
Moin!
Ja, ohne Grundlagen wird es sehr frustrierend. Schau doch da mal rein: http://henkessoft.de/C++/MFC/mfc_einsteigerbuch_kapitel2.htm (Besser noch mit Kapitel 1 anfangen)
Hast du vorher unter DOS programmiert? Dann dürfte das Iritierendste für dich das mit den Nachrichten sein. Ich habs damals so nebenbei begriffen, wie das funktioniert. Einfach durchbeißen.

PS: Der Sprung von C nach C++ ist imho leichter als der von DOS auf Windows.

-
Hey,
estartu schrieb:
Ja, ohne Grundlagen wird es sehr frustrierend. Schau doch da mal rein: http://henkessoft.de/C++/MFC/mfc_einsteigerbuch_kapitel2.htm (Besser noch mit Kapitel 1 anfangen)
Hast du vorher unter DOS programmiert? Dann dürfte das Iritierendste für dich das mit den Nachrichten sein. Ich habs damals so nebenbei begriffen, wie das funktioniert. Einfach durchbeißen.

PS: Der Sprung von C nach C++ ist imho leichter als der von DOS auf Windows.

Ich habe vorher nahezu gar nichts programmiert, vor 6 Jahren mal Java, aber ich war von einem Profi weit entfernt und habe natürlich mittlerweile fast alles vergessen.
Mein erster Eindruck von deiner henkessoft.de ist sehr positiv. Werd mich jetzt noch weiter damit beschäftigen.
Daten aus einer Datei in einem Fenster anzuzeigen, gegebenenfalls durch einen User verändern zu können und diese neuen Daten dann wieder in eine andere Datei zu schreiben (z.B. durch Klicken auf den OK-Button), dieser Vorgang fällt unter den Begriff Serialisierung, oder?
Bisher verstehe ich das DocViewModell zu wenig, um das mit Sicherheit sagen zu können. Und ich würde gern einen ungefähren Überblick haben über das, was ich noch durcharbeiten muss. Deshalb diese Frage.
Liebe Grüße!
-
julchen81 schrieb:
Ich habe vorher nahezu gar nichts programmiert, vor 6 Jahren mal Java, aber ich war von einem Profi weit entfernt und habe natürlich mittlerweile fast alles vergessen.
Okay, dann ist es noch schwieriger, denn ich kannte damals immerhin C.

Daten aus einer Datei in einem Fenster anzuzeigen, gegebenenfalls durch einen User verändern zu können und diese neuen Daten dann wieder in eine andere Datei zu schreiben (z.B. durch Klicken auf den OK-Button), dieser Vorgang fällt unter den Begriff Serialisierung, oder?
Bisher verstehe ich das DocViewModell zu wenig, um das mit Sicherheit sagen zu können. Und ich würde gern einen ungefähren Überblick haben über das, was ich noch durcharbeiten muss. Deshalb diese Frage.
Ich denke, Serialisierung ist eine Möglichkeit, das zu lösen. Ich habe mich damit aber nur sehr wenig und vor langer Zeit beschäftigt.