[vb6] Hoe toolbar zoals Off2K? Bij mouseover ander plaatje?

Pagina: 1
Acties:

  • DPLuS
  • Registratie: April 2000
  • Niet online
Ik ben momenteel bezig met het implementeren van een toolbar in mijn applicatie.
Nu heb ik al het volgende:

Een toolbar control en een imagelist control.
Maar ik zie nu dat ik in die toolbar control niet kan instellen dat er een ander plaatje weergegeven moet worden als je er met de muis boven "hovert", net zoals in Internet Explorer of Office 2000.
Hoe krijg ik zoiets geïmplementeerd?

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
edit:

Hmmm, heb je vraag verkeerd begrepen...
Heb je al eens gekeken naar het HotImageList property?

HotImageList:
Returns or sets the ImageList control to be used for "hot" images—which appear when the cursor hovers over a clickable spot and the Style property is set to tbrTransparent.



Ik heb 1 kort advies: Kijk eens naar de producten van Infragistics

Niet erg duur, erg mooi, superflexibel en handig in het gebruik. Ik gebruik het nu bijna een jaar naar volle tevredenheid (volledige suite).

Waarom zelf schrijven als het al (goed!) voor je gedaan is <grin>

Begrijp me niet verkeerd, ik schrijf liever zelf een componentje, maar deze zijn prima te gebruiken en zo uitgebreid dat het de moeite niet loont om het zelf dunnetjes over te doen

Screenshot 1
Screenshot 2

[ Voor 29% gewijzigd door RobIII op 15-01-2004 15:08 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • DukeMan
  • Registratie: Mei 2000
  • Niet online
Ik heb het ooit gemaakt met een picturebox (meerdere) waar een plaatje in zat. vervolgens gebruikte ik een hook om te achterhalen of de muis over de picturebox zat of er weer uit ging. Vervolgens pas ik aan deze acties het plaatje aan in de picturebox.

Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Private Sub picButton_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)

        If x < 0 Or x > picButton.ScaleWidth - 1 Or y < 0 Or y > picButton.ScaleHeight - 1 Then
            blnHover = False
        Else
            blnHover = True
        End If
        
        If blnHover Then
        
            SetCapture picButton.hwnd
            
            DrawBorder picButton, 1
            
        ElseIf blnHover = False Then
        
            ReleaseCapture
            
            DrawBorder picButton, 0
            
        End If

End Sub

Public Function DrawBorder(picBorder As PictureBox, intState As Integer) As Integer

    Select Case intState
        Case 0
            picBorder.Cls
        Case 1
            'top
            picBorder.Line (0, 0)-(picBorder.ScaleWidth, 0), vb3DHighlight
            'left
            picBorder.Line (0, 0)-(0, picBorder.ScaleHeight), vb3DHighlight
            'bottom
            picBorder.Line _ 
(0, picBorder.ScaleHeight - 1)-(picBorder.ScaleWidth - 0, picBorder.ScaleHeight - 1), vb3DDKShadow
            'right
            picBorder.Line _
(picBorder.ScaleWidth - 1, 0)-(picBorder.ScaleWidth - 1, picBorder.ScaleHeight - 1), vb3DDKShadow
        Case 2
            'top
            picBorder.Line (0, 0)-(picBorder.ScaleWidth, 0), vb3DDKShadow
            'left
            picBorder.Line (0, 0)-(0, picBorder.ScaleHeight), vb3DDKShadow
            'bottom
            picBorder.Line _
(0, picBorder.ScaleHeight - 1)-(picBorder.ScaleWidth - 0, picBorder.ScaleHeight - 1), vb3DHighlight
            'right
            picBorder.Line _
(picBorder.ScaleWidth - 1, 0)-(picBorder.ScaleWidth - 1, picBorder.ScaleHeight - 1), vb3DHighlight
    End Select


End Function

'in je module bovenaan
Public Declare Function SetCapture Lib "user32" (ByVal hwnd As Long) As Long
Public Declare Function ReleaseCapture Lib "user32" () As Long


sorry voor de ver***te layout, maar ik wist het niet beter af te korten