Página 1 de 1

Chamando a API ChooseColor

Enviado: 18 Ago 2012 22:39
por JoséQuintas
Estou chutando pra tentar chamar a API ChooseColor do WIndows.
Consegui a de cores default, mas o diálogo de escolher cor ainda não.
Alguém sabe o macete dos parâmetros?

Código: Selecionar todos

#include "hbdyn.ch"

// esta funcionou
Function WAPI_GetSysColor( pGetSysColor )
   Local hHandleDll := 0, nColor := 0
   hHandleDll := hb_LibLoad("user32.dll")
   nColor := hb_DynCall( { "GetSysColor", hHandleDll, HB_DYN_CALLCONV_STDCALL }, pGetSysColor ) 
   hb_LibFree( hHandleDll )
   Return nColor

// esta ainda não
Function WAPI_ChooseColor()
   Local hHandleDll := 0, pChooseColor := {}, nColor := 0
   pChooseColor := { ;
      WAPI_GetActiveWindow(), ; // hWnd           As Long
      0, ;                      // hInstance      As Long
      0 , ;                     // rgbResult      As Long
      "", ;                     // lpCustColors   As String
      128+2+256, ;             // Flags          As Long
      0, ;                      // lpCustData     As Long
      0, ;                      // lppfnHook      As Long
      "" }                      // lpTemplateName As String     
   hHandleDll := hb_LibLoad("comdlg32.dll")
   nColor := hb_DynCall( { "ChooseColor", hHandleDll, HB_DYN_CALLCONV_STDCALL }, pChooseColor ) 
   hb_LibFree( hHandleDll )
   Return nColor

Chamando a API ChooseColor

Enviado: 19 Ago 2012 08:58
por asimoes
Olá José,

Veja se te ajuda:
http://msdn.microsoft.com/en-us/library ... 85%29.aspx

Chamando a API ChooseColor

Enviado: 19 Ago 2012 15:38
por JoséQuintas
Essa de pegar cores do windows já funcionou.
O problema é no diálogo de escolher cor.