-
Data: 2010-06-15 08:04:23
Temat: Re: [winapi] mulÄ?cy repaint przy resize
Od: " ślamazar" <f...@W...gazeta.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> fir <p...@p...onet.pl> napisał(a):
> > no muszę looknąć - dawno i zarazem rzadko używałem czystego winapi
> > (i choć zarazem szkielet i najczesciej używane funkcje mam
> > opanowane to mam pewne luki) kwestia tego że ja swój bufor
> > mam w wygodnym mi formacie (i dopiero przy rysowaniu
> > wartosci przetwarzam na kolory pixeli) - pewnie dla tego bitblta
> > musialbym przygotowac go specjalnie, mozesz powiedzec pare słow
> > o przygotowaniu tego bufora do blitnięcia? [da sie blitnac od razu
> > np cos takiego "unsigned char [400][300][3];" ?]
>
> Właśnie tak robiłem.
> BYTE bitmap[800*600*3];
> void drawf(HDC lnghdc) {
> HDC fHDC = CreateCompatibleDC(NULL);
> BITMAPINFOHEADER bmiHeader;
> bmiHeader.biSize=sizeof(bmiHeader);
> bmiHeader.biWidth = 800;
> bmiHeader.biHeight = -600;
> bmiHeader.biPlanes = 1;
> bmiHeader.biBitCount = 24;
> bmiHeader.biCompression = BI_RGB;
> bmiHeader.biSizeImage = 0;
> bmiHeader.biXPelsPerMeter =0;
> bmiHeader.biYPelsPerMeter =0;
> bmiHeader.biClrUsed = 0;
> bmiHeader.biClrImportant = 0;
> BITMAPINFO pbmi;
> pbmi.bmiHeader = bmiHeader;
> void *ppvBits = NULL;
> HBITMAP fBitmap = CreateDIBSection (fHDC, &pbmi, DIB_RGB_COLORS, &ppvBits,
> NULL, NULL);
> SelectObject(fHDC,fBitmap);
> CopyMemory(ppvBits,bitmap,800*600*3);
> BitBlt(lnghdc,0,0,800,600,fHDC,0,0,SRCCOPY);
> DeleteObject(fBitmap);
> }
>
ok, zasiadłem do maszyny i to zasadniczo działa, tnx tylko ze
widzę tu chyba trzy błedy/problemy
1) o ile sie orientuje samo CreatedibSection alokuje sobie bufor
ktory jest dostepny pod ppvBits[] i mozna go uzywac,
a CopyMemory z jeszcze jednego innego bufora jest fatalną redundancją
i marnotrastwem i ramu i procka
2) całą to inicjalicacje przed BitBlt jak i destrukcje
po, warto zrobic tylko raz na poczatku i raz na koncu a nie wespol
z kazdym BitBlitem
3) w moim helpie do winapi jest napisane zeby deletowac zarowno
bitmape jak i kontekst a ty deletujesz tylko bitmape; tu mam niejasnosc
bo bitmapa jest czescia kontekstu i nie wiem czy o tyle wystarczy
dletnac tylko kontekst czy tez np wczesniej jego podczesc czyli bitmape :-/
czy ktos moglby to wyjasnic - powiedziec pare słow
fir
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Następne wpisy z tego wątku
- 15.06.10 08:14 Grzegorz Niemirowski
- 15.06.10 08:31 p...@p...onet.pl
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-05 Shrek, wzrośnie cena prądu :-)
- 2025-07-05 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-07-05 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-05 Środa Wielkopolska => SAP FI/CO Konsultant wewnętrzny <=
- 2025-07-06 Płacić za wodę ze studni
- 2025-07-06 Kolejny inżynier...
- 2025-07-05 UE ustępuje pod presją Trumpa. Socjaldemokraci: oddaliśmy miliardy
- 2025-07-04 od kiedy można obrażać Plastusia i do kiedy Batyra?
- 2025-07-05 UE ustępuje pod presją Trumpa. Socjaldemokraci: oddaliśmy miliardy
- 2025-07-03 Trybik
- 2025-07-04 Renault Symbioz
- 2025-07-04 Architektura IIIRP: Wyjątkowa, a prymitywniejsza niż stodoła pod zaborami
- 2025-07-04 Warszawa => International Freight Forwarder <=
- 2025-07-04 Wrocław => SAP ABAP Developer <=
- 2025-07-04 Warszawa => Mid/Senior IT Recruiter <=