Comroader Geschrieben 30. Januar 2002 Geschrieben 30. Januar 2002 Hali-Halo, Wisst Iht wie man die Hintergrundfarbe eines Dialogs ändern kann, ich bräucht eine weisse Hintergrundfarbe, will aber kein Bitmap verwenden. P.S: Hoob die MFC !!! Zitieren
bowo Geschrieben 30. Januar 2002 Geschrieben 30. Januar 2002 Wenn du mit VC arbeitest... Hast du es schonmal mit CDC::SetBkColor versucht ??? MSDN gibt weitere Tips zu SetBKColor bis denn Zitieren
beron Geschrieben 31. Januar 2002 Geschrieben 31. Januar 2002 Also folgendermassen: Wenn du nur die Hintergrundfarbe ändern willst, ist das ganz einfach: VC++ erstellt dir lauter lustige Dateien, dein Dialog wird von irgendwoher aufgerufen, nämlich von der "haupt"cpp deines projektes, da gehst du rein und suchst den aufruf dlg.DoModal(); <--damit wird dein Dialog aufgerufen, jetzt setzt du vor's DoModal COLORREF clrCtlBk = RGB(229, 229, 229); COLORREF clrCtlText = RGB(0, 0, 0); SetDialogBkColor(clrCtlBk, clrCtlText); Ist glaub ich selbsterklärend oder? Wenn du deien Dialog mit ner BMP tapezieren willst, geht das auch, is auch net kompliziert, also: Öffne deinen Dialog im VC++, nun klickst du rechts drauf, wählst "Ereignisse..." nun suchst du dir links die Nachricht WM_CTLCOLOR, doppelklickst diese, nun klickst du sie rechts an und klickst auf "Code bearbeiten..."(oder so ähnlich) nun steht da schon eine Zeile Quellcode, nämlich: HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); Diese Kommentierst du aus und knallst folgende Zeile stattdessen rein: HBRUSH hbr = CreatePatternBrush(LoadBitmap(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDB_BITMAP_BACK))); Ok, statt IDB_BITMAP_BACK musst du halt deine Bitmap-Ressource reinschreiben. Nun müsste alles tapeziert sein, wenn du willst dass der Text durchsichtig ist, schreibst du unter der neuen Zeile Quelltext noch: pDC->SetBkMode(TRANSPARENT); Und simmsalabimm, funktioniert des und sieht lustig aus! bye JO Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.