none
C#,Position von Forms RRS feed

  • Frage

  • Hallo,
    auch dank eurer Hilfe habe ich einige erste Programme zum Laufen gebracht.
    Bevor ich wieder ein neues Projekt beginne, hätte ich gerne einige Hinweise zur Positionierung von Forms.

    1) Kann man zur Laufzeit die Einstellung der Pixeln (Länge/Breite) des Bildschirmes abfragen ?
    2) Wie kann man damit die Startposition eines Forms (linke-obere Ecke) beliebig festlegen ?
    3) Kann man ein Form aus einer beliebigen Position (zB. einer gedachten Linie) heraus "aufrollen"
        und nach Schliessen wieder (ev. mit wählbarer Geschwindigkeit) wieder verschwinden lassen ?
    4) Oder kann man ein Form auch aus einem Startpunkt heraus "wachsen" lassen und dann wieder
        auf Null "zusammenschrumpfen" lassen ?
    5) Wo finde ich zu diesen und ähnlichen Fragen Unterlagen, mit denen man das Layout der Forms
        interessanter gestalten kann ?

    Ich verwende Visual C# 2008 EXPRESS .
    Vielen Dank für Eure Mühe !
    Hermann
    • Verschoben Robert Breitenhofer Montag, 15. Februar 2010 10:11 Visual C# 2008 Express-Edition (Von:Für Entwickler: SQL Server)
    Samstag, 13. Februar 2010 16:24

Antworten

  • Hallo Hermann,

    zu 1) Kann man zur Laufzeit die Einstellung der Pixeln (Länge/Breite) des Bildschirmes abfragen ?

    siehe Screen. PrimaryScreen

    zu 2) Wie kann man damit die Startposition eines Forms (linke-obere Ecke) beliebig festlegen ?

    setze Form. StartPosition auf Manual und lege Location, respektive Bounds anhand der WorkingArea von oben fest.

    zu 3, 4) Animierte Fensterchen der Art gibt es in Windows Forms nicht integriert,
    da es auch im Windows API dafür nichts gibt. Und so wäre das nur mit Low-Level
    Programmierung realisierbar, siehe z. B. http://www.codeproject.com/KB/GDI/anieffect.aspx

    Von einem Versuch es durch Wachsen/Schrumpfen des Fensters zu realisieren,
    würde ich Dir abraten. Da dabei alle enthaltenen Steuerelemente neu gezeichnet
    werden müssen, wird das schnell träge und damit unansehnlich.

    zu 5) Schau Dich mal auf CodeProject um.
    Willst Du es wirklich bunt und viel mit Animationen arbeiten,
    solltest Du auf WPF umschwenken - dort ist einiges mehr möglich.
    Ansonsten bleiben kostenpflichtige Bibliotheken von Drittherstellern.

    Gruß Elmar


    Montag, 15. Februar 2010 16:08

Alle Antworten

  • Hallo Hermann,

    zu 1) Kann man zur Laufzeit die Einstellung der Pixeln (Länge/Breite) des Bildschirmes abfragen ?

    siehe Screen. PrimaryScreen

    zu 2) Wie kann man damit die Startposition eines Forms (linke-obere Ecke) beliebig festlegen ?

    setze Form. StartPosition auf Manual und lege Location, respektive Bounds anhand der WorkingArea von oben fest.

    zu 3, 4) Animierte Fensterchen der Art gibt es in Windows Forms nicht integriert,
    da es auch im Windows API dafür nichts gibt. Und so wäre das nur mit Low-Level
    Programmierung realisierbar, siehe z. B. http://www.codeproject.com/KB/GDI/anieffect.aspx

    Von einem Versuch es durch Wachsen/Schrumpfen des Fensters zu realisieren,
    würde ich Dir abraten. Da dabei alle enthaltenen Steuerelemente neu gezeichnet
    werden müssen, wird das schnell träge und damit unansehnlich.

    zu 5) Schau Dich mal auf CodeProject um.
    Willst Du es wirklich bunt und viel mit Animationen arbeiten,
    solltest Du auf WPF umschwenken - dort ist einiges mehr möglich.
    Ansonsten bleiben kostenpflichtige Bibliotheken von Drittherstellern.

    Gruß Elmar


    Montag, 15. Februar 2010 16:08
  • Hallo Elmar,
    Danke für die Hinweise.
    Deine klaren, gut verständlichen Hilfen tun mir als Immer-Noch-Anfänger gut !
    Eigentlich sollte ich so manche Frage nicht stellen, aber die
    MSDN-Library ist so riesig, dass ich kaum erkennen kann, wo etwas zu
    finden ist.
    Nochmals danke !
    Gruss !
    Hermann

    Dienstag, 16. Februar 2010 08:36