Fenster erzeugen



  • Hi Leute,

    ich möchte zur Laufzeit ein Fenster erzeugen. Habe dafür ne neue MFC-Klasse Namens "Fenstertest" angelegt von der Basisklasse "generic CWnd".
    Konstruktor und Destruktor sehen so aus.

    Fenstertest::Fenstertest()
    {
    	if(!CreateEx(0, AfxRegisterWndClass(0), _T(""), 0, CRect(200,100,200,100), NULL, 0)) 
            AfxThrowResourceException(); 
    }
    
    Fenstertest::~Fenstertest()
    {
    	DestroyWindow(); 
    }
    

    Auf OnButton1 rufe ich

    void CVorschautestDlg::OnButton1() 
    {
        //wnd ist ne Membervariable auf Fenstertest
        ASSERT(wnd.m_hWnd != NULL); 
    }
    

    aber es passiert nichts 😞
    Er gibt mir kein Fenster zurück.
    Und wie müßte ich das umschreiben damit das Fenster in mein Fenster kommt und nicht seperat.



  • gib mal ein paar styles mit an wie WS_POPUPWINDOW, WS_VISIBLE ... 😉

    > Und wie müßte ich das umschreiben damit das Fenster in mein Fenster kommt und nicht seperat.

    WS_CHILD



  • Habe mein ChildWindow nun umgeschrieben

    HINSTANCE hinst = AfxGetInstanceHandle();
    
    			HWND hWndChild = CreateWindowEx(WS_EX_CONTROLPARENT,
    				TEXT ("static"),
    				NULL,
    				WS_CHILD|WS_VISIBLE,
    				200,100,100,100,
    				NULL, //hwnd,
    				NULL,
    				hinst,//hInstance,
    				NULL
    				);
    
    			if ( SUCCEEDED( hr ) )
    			{
    				hr = pPreview->SetViewSetting((DWORD) lCookie,
    											 sizeof(hWndChild),
    											(BYTE*)&hWndChild);
    			}
    

    Es klappt leider nicht ganz.
    Benutze ich vieleicht die falsche Instance?
    Ziel ist in dem Fenster eine Vorschau laufen zu lassen. Aber irgendwie stehe ich z.Z. auf der Leitung.



  • ***mach aktuell***

    Ach ja, Frohes neues Jahr!!! :xmas2:



  • wenn du ein child fenster erstellst, solltest du auch ein parent fenster angeben 🤡 🤡



  • Wo bekomme ich den das Handle für das Parentfenster her? 😕



  • ****Erinnerungs post****

    Ein gutes Tutoral wie man auf ButtonClick ein ChildFenster dynamisch erstellt bzw. wie man generell in MFC Fenster oder andere Komponenten erstellt, ist natürlich auch herzlich willkommen. 😃



  • Wo erzeugst Du denn das 2. Fenster ?



  • ich möchte in dem 2. Fenster das Bild einer Webcam wiedergeben. Noch lieber wäre mir natürlich, wenn das im Hauptfenster rechts oben in der Ecke pasieren würde.



  • Die Webcam ist nur optional, kann auch das Eingangssignal einer Videokarte sein. Ich benötige es für die Vorschau eines Videostreams zu einen Windows Media Server.


Anmelden zum Antworten