Posted By: Jerry_III (Jerry III) on 'CZprogram'
Title:     Re: Prekreslovani (was: MS v D4)
Date:      Wed Sep 29 10:29:40 1999

>      Takze chces rici, ze nekde za handlem GC (handle = jisty 'pointer' do 
> interni struktury) je rekneme seznam informaci o invalidovanych
> regionech...?

Porad rychlejsi nez prekreslovat pokazdy cely okno ;)

>      Jasne, ale muzes i invalidovat neco vlastniho sam pomoci napr. 
> InvalidateRect nebo Te o to zadaji Wokna, kdyz neco nedokazi obnovit... 

Samozrejme ze muzes ... resp. pokud chces mit jistotu, aby se ti prekreslila 
konkretni cast okna tak dokonce musis ;) prave proto, ze windows neprekreslej 
cast okna co neni zinvalidovana ... 

>      Ano, WM_PAIN navic ma ponekud velmi nizkou prioritu vybirani z poolu...
>      Takze pokud jsem to spravne pochopil jedina cesta, jak prekreslit (a 
> donutit okna, aby to na obrazovce skutecne provedli) cele okno s minimalni 
> zatezi CPU je po 1. WM_PAINT udelat pouze Invalidaci okna, nastavit si 
> priznak, ze priste to skutecne mam vykreslit a pri dalsi WM_PAINT zacit 
> kreslit do DC? Nebo staci vykreslit patricne informace do DC, pak zavolat 
> InvalidateRect na cele okno a je to?

Jedina cesta jak donutit windows aby te nechali prekreslit cely okno je:
1. InvalidateRect(GetWindowRect(hWnd)); // Timhle si cely okno zinvalidujes
2. UpdateWindow(hWnd); // Timhle si vynutis WM_PAINT
3. Obsluha WM_PAINT ... jestli to budes mit predem nekde pripraveny a tady to 
jen vysypes nebo jestli to budes generovat az tady je vice mene putna ... 

>      Jo, o kompatibilite Win16 na Win32 pri dodrzeni MS zasad, ktere
> zverejnil 
> by se daly napsat cele knihy...:-(((( (Napr. proc ani Win98 nemaji 32-bitove
> GDI, kdyz MS tvrdi, ze jiz Win95  jsou 32-bit systemem)? Vysvetlujte to 
> zakaznikum, proc to ve WinNT funguje bez problemu, ale ve Win9X ne...  a co 
> tisk, to je kapitola sama pro sebe... 

To bych taky rad vedel ... tedka me toci to, ze cely OLE je v UniCode a ja to 
vsechno musim konvertovat do a z ANSI abych ty stringy moh vubec pouzivat na 
win95/98 (treba kdyz si predavam klice v registry - RegOpenKeyExW na 95/98 
proste neni) 

> > Napis si takovej jednoduchej priklad - udelej si okno, a posilej si kazdou
> > sekundu WM_PAINT ... v obsluze WM_PAINT si dej beepnuti a pak to pust ... 
> > kdyz nebudes mit nic invalidovanyho (treba tim, ze pres okno pretahnes
> jiny 
> > okno) tak to bude zticha ;) 
> 
>      Zajimava myslenka, urcite to vyzkousim, jinak nez akusticky to ladit
> asi 
> nelze, coz?;-)

lze ale akusticky je to nejjednodussi ;))

>  ..s usmevem a laskou jde vsechno lip, nezapominejte na to v zivote..

Presne tak ... a jak rikala moje matikarka - kdyz nejde o zivot jde o hovno ;)

> PaJaSoft

          Jerry III

I kdybych vedel ze za pet minut zanikne svet, jeste bych si sel zkontrolovat 
e-mail

http://jerryiii.home.sprynet.com/mica/index.htm

Search the boards