Visual Basic 2008 Express einen Button selber erstellen

  • VB.NET

Es gibt 13 Antworten in diesem Thema. Der letzte Beitrag () ist von EiPott.

    Visual Basic 2008 Express einen Button selber erstellen

    wie mache ich einen button aus 3 verschiedenen bildern?
    wie man einen button aus 2 bildern macht weiß ich inzwischen.
    aber wie macht man noch ein 3tes dazu?
    also das es wie bei windows ausschaut (also "normal" dann wenn man mit der maus auf den button fährt und schließlich beim draufklicken)

    könnt ihr mir da helfen?
    normal einfach zeichnen
    wenn die maus drüber ist mit dem mouseHover-event (und wenn die maus wieder weg ist mit dem Mouseleave-event wieder in den normal-status gehen)
    und dann beim klicken des mousedown-event

    denk ich mal.
    :P Mfg Aligator :P
    ich hab das vorherso gehabt

    private sub picturebox1_mouseenter
    with picturebox1
    .image = my.recources.start
    end with
    end sub

    dann

    private sub picturebox1_mouseleave
    with picturebox1
    .image = my.recources. start2
    end with
    end sub


    so somit habe ich jetzt die 2 bilder...was nun?

    habs mit mousehover probiert aber es funtzt nicht T.T

    Lukasz490 schrieb:

    wie mache ich einen button

    Lukasz490 schrieb:

    picturebox1_mouseenter

    Erst ein Button, dann eine Picturebox- Entscheide dich mal!
    Nimm statt der PicBox ein Panel und als image backgroundimage, n panel hat die eigenschften die dir fehlen.



    Mfg, jmb.96 :)
    "People assume that time is a strict progression of cause to effect, but actually, from a non-linear, non-subjective viewpoint, it's more like a big ball of wibbly wobbly, ...timey wimey ...stuff."
    Ich mache meine Buttons meist mit einem Label.
    Als Image die jeweilige Phase, gedrückt, oder nicht gedrückt. Das Label, weil der Text dadurch gut positioniert werden kann. Ein kleiner Nachteil ist, das das Image nicht gestretcht / wie in einer Picturebox benutzt werden kann und man deswegen bei verschiedenen Buttongrößen für jede Größe ein eigenes Bild braucht. Aber immer noch besser, als für jede Beschriftung ein eigenes Bild verwenden zu müssen.

    VB.NET-Quellcode

    1. Private Sub lblOptionen_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lblOptionen.MouseDown
    2. lblOptionen.Image = My.Resources.Resources1.Button1_down
    3. lblOptionen.ForeColor = Color.Red 'Wenn der Button gedrückt wird
    4. End Sub
    5. Private Sub lblOptionen_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lblOptionen.MouseUp
    6. lblOptionen.Image = My.Resources.Resources1.Button1_normal 'Wenn der Mausklick endet
    7. End Sub
    8. Private Sub lblOptionen_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles lblOptionen.MouseLeave
    9. lblOptionen.ForeColor = Color.Black 'Wenn Mauszeiger den Button verlassen hat (Normalzustand)
    10. End Sub
    11. Private Sub lblOptionen_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lblOptionen.MouseMove
    12. lblOptionen.ForeColor = Color.LawnGreen 'Wenn Mauszeiger über dem Button ist
    13. End Sub

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Unwesen“ ()

    also ist
    1blOptionen
    dein Name für ein Label?
    sry ich check grad nix

    edit: yeah ich habs geschaft^^
    nur halt mit der picturebox wenn ich es mit nem label probiere geht das nicht >.>

    vielen dank^^

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Lukasz490“ ()

    Aber immer noch besser, als für jede Beschriftung ein eigenes Bild verwenden zu müssen.
    das ist nicht nötig.
    man muss einfach die schrift per GDI+ draufzeichnen.
    :P Mfg Aligator :P

    aligator schrieb:

    man muss einfach die schrift per GDI+ draufzeichnen.
    Kannst du mal ein Beispiel geben? Im Moment habe ich nicht das Gefühl, das das einfacher ist.
    Ich kenne mich net mit GDI+ aus.
    Ich habe nun zwar mit GDI+ einen Text auf die Picturebox gebracht:

    VB.NET-Quellcode

    1. Dim f As New Font("Arial", 10)
    2. Dim pinsel As New SolidBrush(Color.Red)
    3. Private Sub imgButton_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles imgButton.Paint
    4. e.Graphics.DrawString("Test", f, pinsel, 0, 0)
    5. End Sub


    Aber das Ausrichten / Zentrieren erscheint mir bei meinem momentanen Kenntnisstand doch etwas aufwändiger, als wenn ich den Text eines Labels mit Label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter ausrichte / bzw. es im Eigenschaften Fenster einstelle.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Unwesen“ ()