Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » rahmen um ein control

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
23.07.2003, 15:28 Uhr
~mutu
Gast


hallo!

wie zeichnet man zur laufzeit einen rahmen um ein control wie etwa listcontrol?

hintergrund: bei einem listctrl sieht man z.b. nicht, wenn es den focus erhält wie z.b. bei einem button.


C++:
void CMyClass::OnListKontrollSetFocus(NMHDR* pNMHDR, LRESULT* pResult)
{
CRect rectListCtrl;

/*Koordinaten/Maß ListCtrl
linke obere Ecke etwa 1mm von LstCtrl entfernt
bzw. Abstand Rechteck 1mm vom ListCtrl (konzentrisch)
rectListCtrl.left
rectListCtrl.top
rectListCtrl.Width()
rectListCtrl.Height()
*/


//zeichne dünnen Rahmen um das ListControl

}

void CMyClass::OnListKontrollKillFocus(NMHDR* pNMHDR, LRESULT* pResult)
{
//nimm Rahmen um das ListControl wieder weg

}


Dieser Post wurde am 24.07.2003 um 11:56 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
23.07.2003, 22:20 Uhr
mike
Pinguinhüpfer
(Operator)


Hi!
Bin mir jetzt nicht ganz sicher, aber probier mal die Klasse abzuleiten und in OnPaint CPaintDC dc(this); zu schreiben. Ansonstne kannst du nur per NM_CUSTOMDRAW zeichnen. Aber da glaub ich nur zeilenweise.

mfg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
24.07.2003, 09:41 Uhr
Tommix



Hallo,

C++:
        CRect rect;
        GetDlgItem(IDC_YOUR_CONTROL)->GetWindowRect(rect);
        ScreenToClient(rect);

        rect.InflateRect(2, 2);

        CClientDC dc(this);
        dc.DrawFocusRect(rect);



Gruss, Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
24.07.2003, 17:24 Uhr
~mutu
Gast


funzt prima! nur das wechsespiel mit dem entfernen bei onkillfocus() muß ich noch hinkriegen.

"...Because DrawFocusRect is an XOR function, calling it a second time with the same rectangle removes the rectangle from the screen. ..."
 
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: