vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Windows API
Re: BackColor für Slider 
Autor: Ralf Schoen
Datum: 14.07.04 15:29

Hi,

ich habe mir nicht die Mühe gemacht den Tipp den Du genommen hast mir anzuschauen, hier der Code den du brauchst .. ging bestimmt schneller ihn gerade zu schreiben... Das ist jetzt aber für den Slider...

diesen Teil in ein Modul kopieren

Option Explicit
 
Public oldWindowProc As Long
 
Public hwndSlider As Long
 
 
Public hBrush As Long
 
Private Const WM_USER = &H400&
Private Const GWL_WNDPROC As Long = (-4)
 
Private Const WM_CTLCOLORSTATIC = &H138
 
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" ( _
  ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
 
Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" ( _
  ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal uMsg As Long, ByVal _
  wParam As Long, ByVal lParam As Long) As Long
 
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal _
  hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
 
Public Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As _
  Long
Public Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
 
 
Public Sub frmSubClass(hWnd As Long)
 
   oldWindowProc = SetWindowLong(hWnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub
 
 
Public Sub frmUnSubClass(hWnd As Long)
 
   If oldWindowProc Then
      SetWindowLong hWnd, GWL_WNDPROC, oldWindowProc
      oldWindowProc = 0
   End If
 
End Sub
 
 
Public Function WindowProc(ByVal hWnd As Long, ByVal uMsg As Long, ByVal wParam _
  As Long, ByVal lParam As Long) As Long
 
         Select Case uMsg
 
            Case WM_CTLCOLORSTATIC
              If lParam = hwndSlider Then
                  WindowProc = hBrush
                  Exit Function
               End If
          End Select
 
 
          WindowProc = CallWindowProc(oldWindowProc, hWnd, uMsg, wParam, lParam)
 
End Function
 
 
<pre><code>diesen Teil in eine Form und dann einen Slider drauf... 
 
<pre><code>Option Explicit
Private Sub Form_Load()
 
   Call frmSubClass(Me.hWnd)
 
   hBrush = CreateSolidBrush(RGB(255, 0, 0))
   hwndSlider = Slider1.hWnd
 
 
End Sub
 
Private Sub Form_Unload(Cancel As Integer)
 
      DeleteObject hBrush
      Call frmUnSubClass(Me.hWnd)
 
End Sub
Ich würde Dir vorschalgen, schreibe Dir ein kleines ActiveX wo nur der Slider drauf ist. die relevanten Eigenschaften nach außen durchschleifen und dann noch den Background dazu. Dann haste nicht so viele Probs mit dem Subclassing oder du nimmst halt die DLL die es hier in den Tipps und Tricks gibt. Die haste ja auch wohl schon gefunden ...

Hoffe es hilft.

Gru?

Ralf

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
BackColor für Slider2.995Mr. Xpert28.06.04 15:45
Re: BackColor für Slider2.191ModeratorMartoeng28.06.04 16:13
Re: BackColor für Slider1.969Mr. Xpert29.06.04 21:26
Re: BackColor für Slider2.057ModeratorMartoeng30.06.04 10:32
Re: BackColor für Slider2.091Mr. Xpert30.06.04 20:23
Re: BackColor für Slider1.987Mr. Xpert09.07.04 14:28
Re: BackColor für Slider1.933ModeratorMartoeng09.07.04 15:50
Re: BackColor für Slider2.050Mr. Xpert11.07.04 10:24
Re: BackColor für Slider1.936ModeratorMartoeng11.07.04 15:27
Re: BackColor für Slider2.084Mr. Xpert11.07.04 18:27
Re: BackColor für Slider1.954Ralf Schoen12.07.04 17:09
Re: BackColor für Slider2.009Mr. Xpert12.07.04 19:11
Re: BackColor für Slider2.000Mr. Xpert13.07.04 08:48
Re: BackColor für Slider1.828Mr. Xpert13.07.04 14:14
Re: BackColor für Slider1.862Ralf Schoen14.07.04 15:29
Re: BackColor für Slider1.928Mr. Xpert14.07.04 21:14

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel