Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Bildzittert & Backgroundfarbe ändern klappt nicht

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
22.06.2006, 13:02 Uhr
~Olaf9876
Gast


Hi,

hab folgende 2 probleme:

1) Wenn ich die Größe meines Fensters ändere, wird ja jedesmal ein neu gezeichnet, das sieht allerdings unschön aus. Während man die Größe ändert, zittert das Bild so - wie kann man das abstellen?

2) Ich möchte gerne die Hintergrundfarbe meines Fensters ändern, allerdings klappt das nicht. Programm lässt sich kompilieren, aber die Farbe wird nicht gemalt.


Code:
    case WM_PAINT:
        {
            hDC = BeginPaint(hWnd, &ps);
            SetBkColor(hDC, RGB(90,0,0));
            SelectObject(hDC,GetStockObject(LTGRAY_BRUSH));
            Rectangle(hDC, 0, 0, cxClient / 4, cyClient);

            SelectObject(hDC, CreateSolidBrush(RGB(255,0,0)));
            Rectangle(hDC, cxClient/4, cyClient, cxClient - (cxClient / 4), cyClient);
            EndPaint(hWnd, &ps);

            return 0;
        }


Den grauen Kasten den ich mit LTGRAY_BRUSH zeichne wird dargestellt, nur meine eigene, über RGB() definierte Farbe, nicht. Why?

Danke für Hilfe.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
22.06.2006, 13:20 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Versuch mal, auf HBRUSH zu casten:

C++:
HBRUSH myHbrush = (HBRUSH)SelectObject(hDC, CreateSolidBrush(RGB(90,0,0));



ungestestet ..

EDIT: Das habe ich gerade gesehen, evtl hilft dir das: www.winapi.net/index.php?inhalt=s13
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

Dieser Post wurde am 22.06.2006 um 13:22 Uhr von J-jayz-Z editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
23.06.2006, 07:59 Uhr
~Olaf9876
Gast



Zitat von J-jayz-Z:
Versuch mal, auf HBRUSH zu casten:

C++:
HBRUSH myHbrush = (HBRUSH)SelectObject(hDC, CreateSolidBrush(RGB(90,0,0));



ungestestet ..

EDIT: Das habe ich gerade gesehen, evtl hilft dir das: www.winapi.net/index.php?inhalt=s13




Hi,

ich habs leider immernoch nicht hinbekommen. Was mus man machen um ein Rect, mit einer selbstdefinierten farbe zu füllen - mach ich bei der farbdefinition evtl. schon was falsch?

Dieser Post wurde am 23.06.2006 um 09:06 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
23.06.2006, 19:37 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,
wenn's so implementiert wurde wie da steht, kann nix zittern. Der Fehler liegt dann an anderer Stelle.

Zitat:
Was mus man machen um ein Rect, mit einer selbstdefinierten farbe zu füllen


- ClientRect ermitteln (GetclientRect())
- Dein erzeugtes Rechteck abziehen

Weiterhin: C. Petzold Kap. 5 GDI: Die Grundlagen
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: