Wer findet den Fehler?



  • Nabend! 🙂

    Ich habe versucht mit der wxDC-Klasse einen Text rotieren zu lassen, aber es wird leider immer nur ein leerer Bildschirm angezeigt...

    wxString text = "Halloooo";
    //da die Funktion eine Referenz erwartet:
    wxString &text2 = text;
    wxDC dc;
    for(int n = 0; n < 360; n += 30)
    {
      dc.DrawRotatedText(text2, 350, 250, n);
    }
    

    Doch leider wird nichts angezeigt...
    Habs auch schon ohne die Referenz versucht - erfolglos 😮

    Was nun?

    Grüße
    Gapa





  • So läuft das nicht !!!

    Du mußt den DC-Bereich richtig initialisieren !!
    Also normalerweise so :

    wxClientDC pdc(this);
    wxSize mySize(pdc.GetSize().GetWidth(), pdc.GetSize().GetHeight());
    wxBufferedDC dc(&pdc,mySize);

    PrepareDC(dc);
    dc.Clear();

    dc.DrawWhatEver()

    Statt dem wxBufferedDC kann man natürlich auchw as anderes verwenden.
    Bei einem OnPainEvent(), nimmst du halt das wxPaintDC ansonsten erzeugt man immer einen Client-DC!

    Lies dir genau die Doku durch, da steht alles zu dem Thema.


Anmelden zum Antworten