] picturebox als form

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Vatter.

    ] picturebox als form

    Hi leute,
    Also ich wollte fragen wie das geht.
    Also ich hab meine form auf none gestellt und hab in Photoshop eine form erstellt und jetzt wollte ich wissen wie ich die picturebox als form mache also wie kann ich die picturebox bewegen.
    Das mußt du selber coden. Schau mal bei MouseDown und MouseMove.

    @Bernd
    Ich schätze, er will die Titelleiste nicht mehr sehen bzw. ne eigene zeichnen. Da bleibt nur manuelles schieben mit Mouse-Events.
    :thumbsup: Seit 26.Mai 2012 Oppa! :thumbsup:
    Wie gesagt: Mouse-Events
    1. Bei MouseDown-Event
    Die aktuelle MausPosition in einer globalen Variable speichern und
    Eine boolean-Variable setzen, damit du ...
    2. Bei MouseMove-Event
    ..erkennst, ob die Maustaste gedrückt ist.
    Dann ziehst du die alte (gespeicherte) Mausposition von der jetzt aktuellen ab und addierst das Ergebnis zur Location deiner Form und speicherst die aktuelle Mausposition in deiner globalen Variable für den nächsten Zyklus.
    3. Bei MouseUp
    setzt du die boolean-Variable zurück. Damit ist das Verschieben beendet.

    Ich hoffe ich konnte helfen.
    :thumbsup: Seit 26.Mai 2012 Oppa! :thumbsup:
    Hi,
    Du machst folgendes:
    Titelleiste bekommt ein Extra Bitmap.
    Du malst sie mit GDI** (DrawImageUnscaledAndClipped) im Resize* und Load Event* so breit wie die Form ist.
    Danach malst du danach deine Fläche ränder usw. so hoch wie die Form ist auch im Resize und Load Event.
    Titelleiste soll bewegbar sein also Mousedown mit Addhandler Bewegen mit MouseMove und dann Removehandler bei Mouseup.
    Mfg
    Loadsoft
    ** = Siehe MSDN, Gallileo Openbook vb.net/vb 2008 forum (System.drawing)
    * = Gehe zum Code der Form. Oben unter der Tabcontrol leiste siehst du Comboboxen zwei stück. In der einen wählst du Form1 Ereignisse aus und in der anderen wählst du dann das event aus z.b. MouseDown, MouseMove, MouseUp, MouseOver u.a.
    Du solltest dich mit den Ereignissen einer Form auseinandersetzen. Dann verstehst du, was ich meine.
    Die gesamte Steuerung durch irgendwelche Benutzeraktivitäten geschieht durch Ereignisse, eben wenn eine Maustaste gedrückt oder losgelassen oder die Maus über der Form bewegt wird. Und da deine selbsterstellte Form nicht mehr über eine Titelleist verfügt, ist die Möglichkeit, die Form zu bewegen, verloren gegangen. Also mußt du dies Funktion wieder selbst erstellen.
    Schau mal hier
    :thumbsup: Seit 26.Mai 2012 Oppa! :thumbsup: