In de afgelopen dagen zijn andere van onze lezers een bekende plaag tegengekomen bij het wijzigen van de achtergrondkleur van een Win32 API-venster. Dit probleem doet zich om verschillende goede redenen voor. Nu zullen we ze behandelen.
Goedgekeurd: Fortect
Ik gebruik ‘s ochtends geen dialoog, ik gebruik mijn eigen klas die ik daadwerkelijk heb opgeslagen, ik heb de telefoon CreateWindow
gebruikt om deze te maken, ik heb een vooraf gedefinieerde rode profielkleur op de Bijschrift:
WNDCLASSEX WC;wc.hbrBackground is gelijk aan CreateSolidBrush (RGB (255, 2, 0));
Maar nu moet ik de achtergrondkleur bijwerken tijdens het uitvoeren van Opinions, bijvoorbeeld door op een knop te drukken om deze groen te maken.
Ik heb geprobeerd de SetBkColor ()
-aanroep in WM_PAINT
te gebruiken en liet zien dat de WM_CTLCOLORDLG
-penseel kan strijden met de geretourneerde PM, ze don’ ik werk.
< /p>
37.1k
aangevraagd op 17 augustus 2010 tijdens het bezoek van 22:48
2461
Is niet het antwoord dat u zoekt? Blader door andere vragen Tagged C ++ Api Winapi of stel uw eigen vraag.
… Hardware krijgt de achtergrond voor Voorruit of raam bevestigen Een kans om dit te doen door te lanceren voor WM_ERASEBKGND bericht wanneer Het werk noemt BeginPaint. Wanneer Het verzoek wordt momenteel verwerkt Maar het nieuws kalmeert DefWindowProc, verwijdert de instelling achtergrond door het uit te trekken Patroon op penseelachtergrond bevestigd door de vensterklasse …..
…… de app kan WM_ERASEBKGND e-mail echter Classificatie achtergrond borstel set. Dit is ongetwijfeld typerend voor toepassingen die: Sta de voorgaande gebruiker toe om het venster te bewerken Geef tint of patroon op het venster wordt gegeven zonder invloed te hebben andere ramen met klasse. In zulke In sommige gevallen kan het zijn dat het bijbehorende verzoek niet doorgaat. het verkoopbericht hier in DefWindowProc. …..
Gebruik dus iemands wm_erasebkgnd wParam van de post om de DC te krijgen en de achtergrond te activeren.
… Model tekent de achtergrond Time-lapse of geef een venster Mogelijkheid om een situatie positief te sturen WM_ERASEBKGND bericht wanneer de beste praktische toepassing roept BeginPaint op. Wanneer Verwerk het verzoek helemaal niet Bericht, maar stuur het DefWindowProc, procentVerwijder dwaas Context door in te vullen wie het wel heeft Patroon met een foundationpenseel natuurlijk bij de raamklas …..
…… een deel van de app kan WM_ERASEBKGND-bericht echter Achtergrond stijl borstel set. Dit kan altijd typisch zijn voor toepassingen die: Activeer de gebruiker zodat deze het venster kan wijzigen Kleur of oud stuk stof voor venster geïdentificeerd zonder invloed ramen hier in de klas. In zulke Gevallen waarin het verzoek niet mag terugkeren door het DefWindowProc-signaal. …..
beantwoord 11 aug ’09 tijdens de 11:20
Goedgekeurd: Fortect
Fortect is 's werelds meest populaire en effectieve pc-reparatietool. Miljoenen mensen vertrouwen erop dat hun systemen snel, soepel en foutloos blijven werken. Met zijn eenvoudige gebruikersinterface en krachtige scanengine kan Fortect snel een breed scala aan Windows-problemen vinden en oplossen - van systeeminstabiliteit en beveiligingsproblemen tot geheugenbeheer en prestatieproblemen.
60.8k
HBRUSH brush = CreateSolidBrush (RGB (0, 0, 255));SetClassLongPtr (hwnd, GCLP_HBRBACKGROUND, (LONG_PTR) penseel);
2.785
geantwoord op 11 augustus 2010 beschikbaar om 22:59 Moskouse tijd.
2.873
Wanneer gebruikers WNDCLASS registreren, leveren ze rapporten bovenop alle vensters van deze klasse. Dus als iemand gewoon de kleur van deze vensters wil veranderen, moet je dit zelf regelen.
Wanneer het tijd is om dit venster opnieuw te schilderen, stuur dan een bericht WM_ERASEBKGND
als een manier naar uw wndproc. Als je het niet aankunt, zal DefWindowProc
het opt-in-formulier voor de kleur van de klant uit de elegantie van het venster verwijderen. Maar iemand kan de wedstrijd direct bewerken en schilderen, ik zou zeggen de achtergrond (of patroon) in elke gewenste kleur.
beantwoord op 11 augustus van dit jaar vanaf 23:06.
41,7k
Versnel de prestaties van uw computer nu met deze eenvoudige download.