Thread View: de.comp.lang.c++
3 messages
3 total messages
Started by Thomas Fiksel
Sun, 31 Mar 1996 16:50
Brush kommt aller 4096 Pixel
Author: Thomas Fiksel
Date: Sun, 31 Mar 1996 16:50
Date: Sun, 31 Mar 1996 16:50
47 lines
1953 bytes
1953 bytes
Bei der Programmierung eines Vektor-Daten Anzeigen Tools fiel mir folgende
Merkwuerdigkeit auf:
In einem ScrollView mit groszer Ausdehnung (10000x10000) wird ein Polygon
gezeichnet. Diese Polygon ist ausgefuellt. Scrollt man horizontal, dann wird
der Inhalt des Polygons aller 4096 Pixel angezeigt. Warum ? Noch als Hinweis:
Es wird nur der Inhalt angezeigt, keine Seitenlinien !
Ich arbeite mit Visual C++ 1.0, dieses Verhalten tritt sowohl unter Windows 3.1
als auch unter Windows 95 auf. Kurz als Anleitung . Es ist mit AppWizard ein
einfaches Projekt (wied_hlg) zu erstellen, und CView ist durch CScrollView zu
ersetzen, weiter wird die Methode
void CWied_hlgView::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
CSize sizeTotal;
sizeTotal.cx = 10000;
sizeTotal.cy = 10000;
SetScrollSizes(MM_TEXT, sizeTotal);
}
eingefuegt und in der Methode OnDraw folgende Programmschritte ergaenzt :
void CWied_hlgView::OnDraw(CDC* pDC)
{
CWied_hl1Doc* pDoc = GetDocument();
POINT punkte[3];
punkte[0].x=punkte[0].y=100;
punkte[1].x=100;
punkte[1].y=200;
punkte[2].x=200;
punkte[2].y=200;
pDC->SelectStockObject(GRAY_BRUSH);
// pDC->SelectStockObject(NULL_BRUSH);
pDC->Polygon(punkte,3);
}
Und damit kann man den beschriebenen Efekt schon zeigen. Ein kleines
Experiement, welches den Kommentar bei 'SelectStockObject(NULL_BRUSH)' loescht,
bringt dann, dasz kein Brush (auch nach 4096 Pixeln) angezeigt wird.
Gibt es Hinweise ? TIA
Re: Brush kommt aller 4096 Pixel
Author: Dietmar Kuehl
Date: Sun, 31 Mar 1996 17:36
Date: Sun, 31 Mar 1996 17:36
14 lines
1029 bytes
1029 bytes
Hi, Thomas Fiksel (dtf@leskif.j.eunet.de) wrote: : Gibt es Hinweise ? TIA Du solltest in einer Environment spezifischen Newsgroup fragen: Deine Frage bezieht sich zwar auf ein in C++ geschriebenes Programm, ist aber keine C++ Frage "per se". C++ definiert z.B. keinen "ScrollView". Das ist ein Feature, das von einer spezifischen C++ Library hinzugefuegt wird. -- dietmar.kuehl@uni-konstanz.de http://www.informatik.uni-konstanz.de/~kuehl I am a realistic optimist - that's why I appear to be slightly pessimistic
Re: Brush kommt aller 4096 Pixel
Author: Dr. Thomas Fiksel
Date: Mon, 01 Apr 1996 20:42
Date: Mon, 01 Apr 1996 20:42
11 lines
998 bytes
998 bytes
Hallo Dietmar, > Du solltest in einer Environment spezifischen Newsgroup fragen: Deine > Vielen Dank fuer Deinen Hinweis. Aber inzwischen habe ich eine Loesung gefunden: Es ist der Grafik-Driver (SPEA Mirage P64 BigWin). Damit habe ich auch noch ein anderes Problem erledigt, naemlich, dasz der Warmstart nicht mehr funktioniert, wenn Windows 3.1 oder Windows 95 beendet wurde und der BigWin Driver geladen war. Wie im richtigen Leben liegen halt die Probleme manchmal in einer anderen Ecke.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads