Farbe von ProgressBar und den Pfeilen von NumericUpDown ändern

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von ichduersie.

    Farbe von ProgressBar und den Pfeilen von NumericUpDown ändern

    Ich bin noch ganz neu hab noch nicht viel Ahnung. Ich will die Farben der Progress Bar ändern (nutze VB express 2010) hab es zwar unten Rechts eingestellt aber es ändert sich nichts wie könnte es sonst noch gehen oder was mache ich Falsch? und noch zum NumericUpDown dort funktioniert das Farbe ändern doch die Pfeile bleiben immer grau kann man das ändern oder sonst würde ich ne TextBox nehmen aber ich weiss nicht kann man irgendwie machen dass diese nur Zahlen akzeptiert?
    (Man merkt wohl dass ich völliger Anfänger bin...)
    Lg Ale
    Nein, du kannst die Farbe von solchen Standard-Controls nicht ändern. Auch solltest du deine Idee mit einer Textbox verwerfen(höchstens NumericUpDown).
    Du hast 3 Möglichkeiten, für alle 3 brauchst du GDI+ Kenntnisse:
    1. Du erbst von den Controls und überschreibst die OnPaint-Prozedur.
    2. Du erbst von Control und schreibst die Controls selber.
    3. Du benutzt das Paint-Event und übermalst die unerwünschten Farben.

    Du könntest höchstens nach fertigen Controls im Internet suchen, die deine Anforderungen abdecken.

    LG
    Willkommen im Forum. :thumbup:

    Ale 2.0 schrieb:

    hab es zwar unten Rechts eingestellt
    Wo genau? Das geht nämlich nicht ganz einfach.
    Probier mal dies: Neues Projekt, 3 Button, ProgressBar, TrackBar1:
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Imports System.Runtime.InteropServices
    2. Public Class Form1
    3. <DllImport("user32.dll", EntryPoint:="SendMessageA", CharSet:=CharSet.Ansi, SetLastError:=True, ExactSpelling:=True)>
    4. Public Shared Function SendMessage(ByVal hwnd As IntPtr, ByVal uMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
    5. End Function
    6. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    7. SendMessage(ProgressBar1.Handle, 1040, 1, 0)
    8. End Sub
    9. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    10. SendMessage(ProgressBar1.Handle, 1040, 2, 0)
    11. End Sub
    12. Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    13. SendMessage(ProgressBar1.Handle, 1040, 3, 0)
    14. End Sub
    15. Private Sub TrackBar1_Scroll(sender As Object, e As EventArgs) Handles TrackBar1.Scroll
    16. ProgressBar1.Value = TrackBar1.Value
    17. End Sub
    18. End Class
    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!
    Das mit den verschiedenen Farben bei einer ProgressBar hab ich hier implementiert: AeroSuite Control-Library
    Einfach die .dll runterladen, einbinden und die ​AeroProgressBar aus der Toolbox nehmen. Die hat dann die entsprechenden Einstellungen :)