beim SDI---Maske mit Menüs löschen
-
guten morgen
habs so gemacht,aber dann zeigts mir gar nichts an..
also die Funktion mit Dialogbasierend(Projetname einfach nur "r")
///////////////////////////////////////////////////////////////////////////// // CRApp Initialisierung BOOL CRApp::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 CRDlg 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 } // Da das Dialogfeld geschlossen wurde, FALSE zurückliefern, so dass wir die // Anwendung verlassen, anstatt das Nachrichtensystem der Anwendung zu starten. return FALSE; }und nun von SDI
///////////////////////////////////////////////////////////////////////////// // CAdoDatabaseApp Initialisierung BOOL CAdoDatabaseApp::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 // Ändern des Registrierungsschlüssels, unter dem unsere Einstellungen gespeichert sind. // ZU ERLEDIGEN: Sie sollten dieser Zeichenfolge einen geeigneten Inhalt geben // wie z.B. den Namen Ihrer Firma oder Organisation. SetRegistryKey(_T("Local AppWizard-Generated Applications")); LoadStdProfileSettings(); // Standard INI-Dateioptionen laden (einschließlich MRU) // Dokumentvorlagen der Anwendung registrieren. Dokumentvorlagen // dienen als Verbindung zwischen Dokumenten, Rahmenfenstern und Ansichten. CSingleDocTemplate* pDocTemplate; pDocTemplate = new CSingleDocTemplate( IDR_MAINFRAME, RUNTIME_CLASS(CAdoDatabaseDoc), RUNTIME_CLASS(CMainFrame), // Haupt-SDI-Rahmenfenster RUNTIME_CLASS(CAdoDatabaseView)); AddDocTemplate(pDocTemplate); // Befehlszeile parsen, um zu prüfen auf Standard-Umgebungsbefehle DDE, Datei offen CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); // Verteilung der in der Befehlszeile angegebenen Befehle if (!ProcessShellCommand(cmdInfo)) return FALSE; // Das einzige Fenster ist initialisiert und kann jetzt angezeigt und aktualisiert werden. m_pMainWnd->ShowWindow(SW_SHOW); m_pMainWnd->UpdateWindow(); return TRUE; }..aber wenns nicht klappt ist au net schlimm,

-
Okay, ich lösch jetzt mal die Funktionen so zusammen, dass du besser erkennen kannst, welche Codeteile ich meinte. (Das heißt NICHT, dass du das löschen sollst - das dient nur der Übersicht.)
///////////////////////////////////////////////////////////////////////////// // CRApp Initialisierung BOOL CRApp::InitInstance() { // [...] CRDlg 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 } // Da das Dialogfeld geschlossen wurde, FALSE zurückliefern, so dass wir die // Anwendung verlassen, anstatt das Nachrichtensystem der Anwendung zu starten. return FALSE; }BOOL CAdoDatabaseApp::InitInstance() { // Hier stand das Selbe wie oben... // Ändern des Registrierungsschlüssels, unter dem unsere Einstellungen gespeichert sind. // ZU ERLEDIGEN: Sie sollten dieser Zeichenfolge einen geeigneten Inhalt geben // wie z.B. den Namen Ihrer Firma oder Organisation. SetRegistryKey(_T("Local AppWizard-Generated Applications")); LoadStdProfileSettings(); // Standard INI-Dateioptionen laden (einschließlich MRU) // Dokumentvorlagen der Anwendung registrieren. Dokumentvorlagen // dienen als Verbindung zwischen Dokumenten, Rahmenfenstern und Ansichten. CSingleDocTemplate* pDocTemplate; pDocTemplate = new CSingleDocTemplate( IDR_MAINFRAME, RUNTIME_CLASS(CAdoDatabaseDoc), RUNTIME_CLASS(CMainFrame), // Haupt-SDI-Rahmenfenster RUNTIME_CLASS(CAdoDatabaseView)); AddDocTemplate(pDocTemplate); // Befehlszeile parsen, um zu prüfen auf Standard-Umgebungsbefehle DDE, Datei offen CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); // Verteilung der in der Befehlszeile angegebenen Befehle if (!ProcessShellCommand(cmdInfo)) return FALSE; // Das einzige Fenster ist initialisiert und kann jetzt angezeigt und aktualisiert werden. m_pMainWnd->ShowWindow(SW_SHOW); m_pMainWnd->UpdateWindow(); return TRUE; }Siehst du nun, wo der Dialog aufgerufen werden muss und welche Zeilen du löschen kannst?
Du kannst im Prinzip alles, was unten noch da steht löschen und das, was oben steht auf das Projekt angepasst da rein schreiben.
Wenn du immer noch nicht weiter weißt, beantworte mal folgende Fragen:
Wie heißt die Dialogklasse?
Wie heißt die Headerdatei dazu?
Du willst wirklich nur den Dialog?Sollte es das Projekt sein, was ich hier habe, dann kann ich mir die Fragen selber beantworten - ist es das?

-
hey super danke estartu_de, endlich klappt mal was (hast mir ja auch alles gezeigt wie's geht
)
das sieht dann so aus...muss nur noch deine Kommentare übernehmen... // Ändern des Registrierungsschlüssels, unter dem unsere Einstellungen gespeichert sind. // ZU ERLEDIGEN: Sie sollten dieser Zeichenfolge einen geeigneten Inhalt geben // wie z.B. den Namen Ihrer Firma oder Organisation. //SetRegistryKey(_T("Local AppWizard-Generated Applications")); //LoadStdProfileSettings(); // Standard INI-Dateioptionen laden (einschließlich MRU) // Dokumentvorlagen der Anwendung registrieren. Dokumentvorlagen // dienen als Verbindung zwischen Dokumenten, Rahmenfenstern und Ansichten. // CSingleDocTemplate* pDocTemplate; // pDocTemplate = new CSingleDocTemplate( // IDR_MAINFRAME, // RUNTIME_CLASS(CAdoDatabaseDoc), // RUNTIME_CLASS(CMainFrame), // Haupt-SDI-Rahmenfenster // RUNTIME_CLASS(CAdoDatabaseView)); // AddDocTemplate(pDocTemplate); // Befehlszeile parsen, um zu prüfen auf Standard-Umgebungsbefehle DDE, Datei offen //CCommandLineInfo cmdInfo; //ParseCommandLine(cmdInfo); // Verteilung der in der Befehlszeile angegebenen Befehle //if (!ProcessShellCommand(cmdInfo)) // return FALSE; Dilog dlg; dlg.DoModal(); // Das einzige Fenster ist initialisiert und kann jetzt angezeigt und aktualisiert werden. // m_pMainWnd->ShowWindow(SW_SHOW); // m_pMainWnd->UpdateWindow(); return FALSE; }
-
// Willst du den Dialog wirklich Nicht-modal haben? Das würde so jetzt keinen Sinn mehr machen, deswegen
was hast du da eigentlich gemeint?
Hab ich jetzt eigentlich zuviel auskommentiert?
-
Das ist doch das aus dem Beitrag von heute morgen...Naja, Hauptsache, es geht.

Die Kommentare sind übrigens nicht von mir (bis auf zwei Zeilen), sondern vom Assistenten. Und meine musst du nicht übernehmen, die waren nur zum Zeigen.
-
ne nicht ganz
if (!ProcessShellCommand(cmdInfo)) return FALSE;das muss man auch noch streichen....aber egal
Aber gehen tuts jetzt nicht mehr, oh je, ich lass es jetzt lieber...
sobald ich auf "erster"klick wird dass Programm beendet und meine Daten aus der Datenbank (die schon drin sind) werden auch nicht angezeigt
-
Same Procedure as last time...
... Bereinigen, einpacken, herschicken.

Ich guck dann mal schnell - das geht wirklich schneller, denn dafür muss ich mich nicht in was einlesen.

-
yup hast post
-
Hast Rückmail.

-
hallo estartu_de
besten Dank für deine Mail
Hast mir sehr weitergeholfen
Das mit dem Abbrechen klappt, aber es ist glaub besser wennn ichs so lasse wie ichs vorher hatte, sonst muss ich ja alles ändern (Hinzufügen,Aktuellen Datensatz anzeigen usw, geht nämlich noch nicht)Das mit dem Datum hat wunderbar geklappt.
Allerdings geht das nur wenn ich die Dialog-Maske anzeigen lass, wenn ichs wie vorher (MaskeMenü+Dialog) wieder haben funktioniert es net.