🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #1951

Brush kommt aller 4096 Pixel

#1951
From: 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
Technical Details
Message-ID: <N.033196.175006.19@leskif.j.eunet.de>
Path: arc1-ca.pugleaf.net!Dortmund.Germany.EU.net!news-intern

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!Dortmund.Germany.EU.net!news-intern
From: dtf@leskif.j.eunet.de (Thomas Fiksel)
Newsgroups: de.comp.lang.c++
Subject: Brush kommt aller 4096 Pixel
Date: Sun, 31 Mar 96 16:50:06 GMT
Organization: EUnet Deutschland GmbH - R&D
Distribution: world
Message-ID: <N.033196.175006.19@leskif.j.eunet.de>
NNTP-Posting-Host: leskif.j.eunet.de
X-Newsreader: Quarterdeck Message Center [1.0]