Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Window Style ändern

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
10.12.2006, 17:01 Uhr
realmontanakid



Hallo

Ich suche eine Möglichkeit die CaptionBar und Border von Windows Fenstern in meinen eigenen Apps zu überschreiben. Es gibt eine Menge Sample Code wenn man sich ein Fenster aus einem Bitmap erstellen will.. alles kein Thema.. Ich möchte z.B. den Style des Fensters ändern. Also eigene bmp's für maximize, minimize Buttons und den Fenster Frame mit einem eigenen Bitmap überschreiben. Ich denke dafür muss ich CDialog überschreiben, oder? Ich hab noch nicht so richtig eine Idee? Weiß emand wie ich das machen kann? Ich habe mir mal den Quelltext von Shareaza angesehen, aber das würde zu lange dauern sich da durch zu ackern.

Gruß
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
11.12.2006, 15:24 Uhr
realmontanakid



Hallo

also soweit bin ich schonmal...


C++:
   Default ();
   CWindowDC dc (this);
   CRect rcWindow;
   GetWindowRect (rcWindow);

   CBitmap bmpCaption;
   bmpCaption.LoadMappedBitmap (IDB_BITMAP1);
   BITMAP bmp;
   bmpCaption.GetBitmap (&bmp);

   int x = ::GetSystemMetrics (SM_CXDLGFRAME);
   int y = ::GetSystemMetrics (SM_CYDLGFRAME);

   int nWidth  = min (bmp.bmWidth, (rcWindow.Width () - 2 * x));
   //int nHeight = min (bmp.bmHeight, ::GetSystemMetrics (SM_CYCAPTION));
   int nHeight = bmp.bmHeight;

   CDC dcMem;

   dcMem.CreateCompatibleDC (&dc);
   dcMem.SelectObject (&bmpCaption);
   //dc.BitBlt (0 ,0, nWidth, nHeight, &dcMem, 0, 0, SRCCOPY);

   //SetStretchBltMode (dcMem, HALFTONE);
   dc.StretchBlt (0, 0, rcWindow.Width (), rcWindow.Height (), &dcMem, 0, 0, rcWindow.Width (), rcWindow.Height (), SRCCOPY );

   //CRect rcDraw (0, 0, rcWindow.Width (), rcWindow.Height ());
   //dc.DrawEdge (rcDraw, EDGE_ETCHED, BF_BOTTOMRIGHT);



Allerdings weiß ich nun nicht weiter. Das Bitmap ist 10 px lang und ich möchte das über das Fenster "strechen". Allerdings funktioniert das mit StretchBlt nicht so wirklich.
 
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: