Mehrere Zeilen in Eingabefld markieren
From: Oliver Zschäge (anonymous_at_discussions.microsoft.com)
Date: 02/25/04
- Next message: Markus Schweiger (MVP): "ANN: pocket-expert.de newsletter #110"
- Previous message: Daniel B. Styhler: "Re: InputPanel"
- Messages sorted by: [ date ] [ thread ]
Date: Wed, 25 Feb 2004 03:53:26 -0800
Hallo.
Ich versuche mit Code mehrere Zeilen in einem Eingabefeld
zu markieren. Dazu habe ich in der Funktion OnCtlColor(..)
folgenden Code eingefügt:
CRect rec;
CRgn rgn;
int right, left, top, y_size, bottom;
pWnd->GetClientRect(&rec);
pDC->SelectClipRgn( NULL );
right = rec.right-1;
left = rec.left+1;
y_size = LINE_MARK_BREITE * m_line_hoehe;
top = ( m_cur_line - m_first_line -
(LINE_MARK_BREITE/2) ) * m_line_hoehe;
if ( top < 0 ) // Anschlag oben ??
{
top = 0;
y_size -= m_line_hoehe * (LINE_MARK_BREITE/2);
}
bottom = top + y_size;
if ( bottom > rec.bottom )
bottom = rec.bottom;
rgn.CreateRectRgn ( left, top, right, bottom );
pDC->SelectClipRgn( &rgn );
rgn.DeleteObject();
}
Die markierten Zeilen werden angezeigt. Nur der Rest der
im Eingabefeld steht, wird nicht mehr angezeigt.
Weiß jemand, woran das liegen kann? Unter WIN_32
funktioniert dieser Code.
Oli
- Next message: Markus Schweiger (MVP): "ANN: pocket-expert.de newsletter #110"
- Previous message: Daniel B. Styhler: "Re: InputPanel"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|