Mehrere Zustände einer Windows Form festlegen

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von YaPh1l.

    Mehrere Zustände einer Windows Form festlegen

    Hallo! :)
    Ich arbeite momentan seit Wochen an einem Projekt und es ist echt anstrengend, aber es macht so viel Spaß, dass ich gar nicht aufhören möchte. Nun muss ich jedoch gestehen, dass ich in der Schule nur Java gelernt habe (und das nicht einmal vernünftig - ich wollte es ja lernen, aber unser Lehrer meinte ja uns mit seiner Vergangenheit zu belästigen und somit ungenutzte Stunden verstreichen zu lassen) und deswegen noch ein ziemlicher Anfänger in Sachen C++ ist; obwohl man ja einiges aus Java schon kennt, bin ich leider noch nicht so vertraut mit manchen Sachen.

    Ich möchte nämlich ein virtuelles Buch erstellen, d.h. ein Buch in digitaler Form. Wie jedem nun bekannt sein sollte, muss man ein Buch vor- und zurückblättern können und das möchte ich programmieren, indem ich Zustände erstelle und diese einer Form zuweise.

    Nur wie tue ich dies am besten?
    Ich hatte es mir nämlich so gedacht:
    Der Text wird durch einen 'Schreibmaschineneffekt' wiedergegeben und sowohl an der linken als auch an der rechten Seite befinden sich zwei Buttons, die das Vor- und Zurückblättern ermöglichen sollen. Dies soll nur durch eine Form realisiert werden. Ich dachte deswegen daran mehrere 'Layer' zu erstellen aber kann dies nicht so wirklich in Quellcode umwandeln.

    Würdet ihr mir vielleicht helfen? Das wäre ziemlich nett und würde mich sehr viel weiter bringen.
    Danke ! :love:

    SAR-71 schrieb:

    Ich würde ein Label empfehlen, dass du einfach beschreibst.

    Ein Label ist ReadOnly.
    Wenn, dann eine TextBox oder besser eine RichTextBox.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Man könnte hier einen objektorientierten Ansatz wählen: Man nimmt eine Klasse Book, welche die Seiten inkl. Navigation Back() und Forward(), sowie die aktuelle Seite CurrentPage und ein Event CurrentPageChanged anbietet. Ob man für die einzelnen Seiten eine Klasse Page erstellt oder einfach mit String arbeitet, hängt davon ab, wie weit du das ganze ausbauen willst (Seiten mit Bildern?). Wie man das dann darstellt (Label, GDI+) ist relativ egal, wobei der Schreibmaschineneffekt (oder Bilder) doch für GDI+ spricht.
    In der Form hast du dann eine Variable vom Typ Book, bei den Buttons rufst du nur die Methoden Back() bzw. Forward() auf. In CurrentPageChanged stellst du die neue Seite dar (neuer String fürs Label, Invalidate() bei GDI+).

    Viele Grüße, Phil.