-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: " ślamazar" <f...@W...gazeta.pl>
Newsgroups: pl.comp.programming
Subject: Re: [winapi] mulÄ?cy repaint przy resize
Date: Tue, 15 Jun 2010 08:04:23 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 62
Message-ID: <hv7c66$e57$1@inews.gazeta.pl>
References: <hv4q4j$1pl4$1@opal.icpnet.pl> <6...@n...onet.pl>
<hv4thv$1t6j$1@opal.icpnet.pl>
NNTP-Posting-Host: localhost
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1276589063 14503 172.20.26.242 (15 Jun 2010 08:04:23 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Tue, 15 Jun 2010 08:04:23 +0000 (UTC)
X-User: fir
X-Forwarded-For: 83.6.138.148
X-Remote-IP: localhost
Xref: news-archive.icm.edu.pl pl.comp.programming:185765
[ ukryj 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
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-11 Koszty prowadzenia firmy za granicą
- 2025-01-11 19 migrantów
- 2025-01-11 300km/h
- 2025-01-11 Kongres USA uchwalił "Prawo babci Pawlakowej" na MTK [Lex Gradma Pawlak]
- 2025-01-11 Riga => Specjalista ds. public relations <=
- 2025-01-11 Przestępca wyborczy Musk nadciąga nad Tuskistan?
- 2025-01-11 Białystok => Delphi Programmer <=
- 2025-01-09 Jaka nawigacja z asystentem zmiany pasa ruchu?
- 2025-01-10 Coś dusi.
- 2025-01-09 akumulator napięcie 12.0v
- 2025-01-10 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-01-10 Warszawa => Software .Net Developer <=
- 2025-01-10 Białystok => Application Security Engineer <=
- 2025-01-10 Warszawa => System Architect (Java background) <=
- 2025-01-10 Warszawa => Solution Architect (Java background) <=