• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[c++] Text in richTextBox auf den Kopf stellen

LP-Tobi

Mitglied
Guten Abend!

Bin noch ganz am Anfang mit meinen C++ Künsten :-)

Habe folgende Frage:

Wie kann ich den Text in einer richTextBox auf den Kopf stellen?

Um es zu verdeutlichen, das ganze soll so aussehen: uǝpɹǝʍ ʇƃıǝzǝƃuɐ ʇxǝʇ ɹǝp llos os

Hier noch ein bisschen Code dait ihr wisst was ich vor habe:
Code:
        }
#pragma endregion
    private: System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e) {
             }
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e)
             {
            richTextBox1->Text = textBox1->Text;     
             }
    private: System::Void textBox1_TextChanged(System::Object^  sender, System::EventArgs^  e) {
             }
    private: System::Void richtextBox1_TextChanged(System::Object^  sender, System::EventArgs^  e) {
             }        
    };
}

Hoffe mir kann jemand weiter helfen.
 
Werbung:
Erstmal, du hast nicht den ganzen Text auf den Kopf gestellt, sondern du hast jedes Zeichen einzeln auf den Kopf gestellt und dann den Text rückwärts ausgegeben, sprich die Zeile ist immer noch unten bündig.
Soll das so, oder willst du wirklich den ganzen Text auf den Kopf stellen, sprich oben bündig?

Was mit Java & Co. auf Webseiten geht ist in C++ unter Windows eine völlig andere Geschichte.
Angefangen mit der Frage, ob das eine UNICODE-Anwendung ist oder nicht, über die Tatsache, dass auch in UNICODE die Anzahl der verfügbaren Zeichen von der gewählten Schriftart abhängt, bis zu der Tatsache, dass auch ein edit-Control seinen Inhalt nicht als Zeichen, sondern via WM_PAINT-Event als Grafik ins Fenster zeichnet.

Um schlicht die Grafik in der Anzeige umzudrehen kannst du das Control subclassen, WM_Paint abfangen und den BitBlt() rückwärts laufen lassen, aber damit vermurkst du fast alle Funktionen des Controls, wie z.B. Copy&Paste.
Um den Inhalt Zeichen für Zeichen umzudrehen musst du eine Schriftart wählen (oder selber machen), in der alle benötigten Zeichen als Kopfstand-Version existieren, musst aber (bei Bedarf) auch noch die Reihenfolge der Zeichen umdrehen, sprich rückwärts schreiben.
Falls du so eine Schriftart hast, wo sämtliche Zeichencodes mit den original Zeichencodes übereinstimmen, kannst du ganz einfach dem Control diese Schriftart zuweisen, hast dann aber immer noch dass Problem, dass beim Copy&Paste in ein anderes Programm (was eine andere Schriftart verwendet) die Zeichen wieder normal anzeigt werden, dafür aber (falls du die Reihenfolge der Zeichen umgedreht hast) immer noch rückwärts.
 
Zuletzt bearbeitet:
Werbung:
Zurück
Oben