🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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
#1951
Author: Thomas Fiksel
Date: Sun, 31 Mar 1996 16:50
47 lines
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
#1955
Author: Dietmar Kuehl
Date: Sun, 31 Mar 1996 17:36
14 lines
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
#1961
Author: Dr. Thomas Fiksel
Date: Mon, 01 Apr 1996 20:42
11 lines
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