Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Tack0

Páginas: [1]
1
Visual Basic 6 / Control para medir temperatura, velocidad, etc
« en: Enero 09, 2013, 06:56:24 pm »
hola a todos,

necesito saber si existe (y en caso de existir orientarme en el tema) alguna versión mejorada de los viejos controles de medición suministrados con el gauge32.ocx, ya que estos no admiten cambio de apariencia ni otras personalizaciones,

saludos,

Tack0

2
Visual Basic 6 / Re:Ayuda con Usercontrol en VB
« en: Septiembre 10, 2011, 09:24:56 pm »
acabo de probarlo y funciona bien, gracias.

salu2,

Tack0

3
Visual Basic 6 / Ayuda con Usercontrol en VB
« en: Septiembre 09, 2011, 02:02:05 pm »
Tengo un usercontrol en VB6, con propiedades, métodos y eventos, hasta aqui todo bien, necesito agregar ayuda a las propiedades del control en modo diseño, de forma tal que cuando el usuario inserte el control en un form y pulse F1 o pinche en la página de  de propiedades cargue un chm con el tópico correspondiente,

en modo runtime funciona perfecto, el tema es que no hace nada en modo diseño, mejor dicho, si funciona, pero carga la ayuda del VB en vez d ela del control.

les explico como le hago.

en la seccion declare
Código: (vb) [Seleccionar]
Private Declare Function HtmlHelp Lib "hhctrl.ocx" Alias "HtmlHelpA" (ByVal hwnd As Long, ByVal HelpFile$, ByVal wCommand As Long, ByVal dwData As Long) As Long

Private Const HH_DISPLAY_TOPIC As Long = 0
Private Const HH_HELP_CONTEXT As Long = &HF
'--------------------------------------------------------------------

en el initialize del control pongo
UserControl.KeyPreview = True

en el terminate
UserControl.KeyPreview = True

en el evento keydown del usercontrol
Private Sub UserControl_KeyDown(KeyCode As Integer, Shift As Integer)
' 10 es el número de la ayuda de contexto en el .chm
' checkpath es una funcion que devuelve si el fichero existe físicamente
If KeyCode = vbKeyF1 Then
    If CheckPath(App.Path & "\aa.chm") = True Then
        HtmlHelp hwnd, App.Path & "\aa.chm", HH_HELP_CONTEXT, 10
End If
End Sub
espero puedan ayudarme, ya que la ayuda en modo de diseño es genial para los usuarios finales y da buen toque de profesionalidad.

saludos,

Tack0

4
Visual Basic 6 / Re:[src] Seek Bar
« en: Septiembre 09, 2011, 10:12:27 am »
Buenos dias coco,

ante todo agradecer por este post, llevo mucho tiempo buscando un ocx o ctl de un scroll horizontal y vertical que pueda ser tematizado (office 2007, 2010, xp, etc) y que tenga el evento de la rueda del mouse para hacer scroll (ademas de los clásicos botones izquierdo y derecho).

la ocx convencional del vb6 no tiene temas (lo del scroll con la rueda del mouse lo resolvi con un codigo que descargue y me sirvió), posteriormente descargué las librerias del codejock (que si tienen temas) pero no cogen el scroll con la rueda del mouse. El control framework permite tematizar los controles convencionales pero el scroll con la rueda del mouse con el codigo anteriorme nte mencionado ya no trabaja.

en resumen, su control pudiera ayudarme mucho y por eso le agradezco.

Pregunto:

Tiene una version mas avanzada del mismo o esto es ya un proyecto cerrado?.

Pudiera pensar en hacer un control similar no para mimetizar la barra de desplazamiento de windows media sino para hacer un scroll horizontal/vertical que pueda ser tematizado y que además responda al evento del scroll con la rueda del mouse?.

saludos,

Tack0

nota: el código que mencionaba anteriormente se lo pongo a continuacion
Código: [Seleccionar]
' Funciones API para hacer trapping a los botones del mouse para agregar a un scrollbar
' el scroll del mouse y eliminar de los controles textbox el menu emergente.
'-----------------------------------------------------------------------------
Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Declare Function SetWindowLong& Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long)
Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal msg As Long, wParam As Any, lParam As Any) As Long
Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long

Const GWL_WNDPROC = (-4)
Const WM_RBUTTONDOWN = &H204
Const SM_CYHSCROLL = 3
Const SM_CXVSCROLL = 2
Private Const WM_MOUSEWHEEL = &H20A
Private Const WM_VSCROLL As Integer = &H115

Public PrevProc As Long
' Procedimiento de ventana que devuelve el puntero al boton que se presiona
'-----------------------------------------------------------------------------
Public Function WindowProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  If uMsg = WM_RBUTTONDOWN Then Exit Function
  WindowProc = CallWindowProc(PrevProc, hwnd, uMsg, wParam, lParam)
  If uMsg = WM_MOUSEWHEEL Then
        If wParam < 0 Then
            'Scroll hacia abajo
            SendMessage hwnd, WM_VSCROLL, ByVal 1, ByVal hwnd
                    Else
            ' scroll hacia arriba
            SendMessage hwnd, WM_VSCROLL, ByVal 0, ByVal hwnd
        End If
  End If
End Function

' instala el hook
Public Sub Hook(Obj As Object)
    PrevProc = SetWindowLong(Obj.hwnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub

' quita el hook
Public Sub UnHook(Obj As Object)
    SetWindowLong Obj.hwnd, GWL_WNDPROC, PrevProc
    PrevProc& = 0
End Sub

Páginas: [1]