O que não entendi/não encontrei é:
Como é feito o vínculo entre oDlg e oDlg:oBrowse
Teria que existir o método/propriedade oBrowse na classe HDialog()
Em algum lugar deve existir a criação/destruição, ou alguma rotina que faça esse vínculo.
Imagino que seja algo parecido com uma rotina que foi postada no tópico do Harbour, que devo ter anotada em algum lugar.
Mesmo assim, provavelmente precisaria ser pelo nome da variável.
Não entendi na hwgui oDlg:Browse:SetFocus()
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Não entendi na hwgui oDlg:Browse:SetFocus()
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Não entendi na hwgui oDlg:Browse:SetFocus()
Deu um trabalhinho mas encontrei.
Esse último: hwg_SetCtrlName(), porque o nome da variável precisa vir do fonte.
E em hCustomWindow, igual já postaram por aqui:
No caso de erro na classe, acessar um nome que não existe, procura na lista de controles se existe algum com aquele nome, e já assume.
Como isso fica na classe comum de janelas - todo controle herda isso - acaba funcionando.
Muito doido isso.
É isso que hmg não usa, sei lá se dá pra fazer isso sem alterar a parte interna dela.
Transformaria as "mensagens" em DoMethod( "" ) ou coisa parecida (acho que é isso que hmg usa).
Código: Selecionar todos
#xcommand @ <x>,<y> SAY [ <oSay> CAPTION ] <caption> ;
...
[ TOOLTIP <ctoolt> ] ;
=> ;
[<oSay> := ] HStatic():New( <oWnd>,<nId>,<nStyle>,<x>,<y>,<width>, ;
<height>,<caption>,<oFont>,<bInit>,<bSize>,<bDraw>,<ctoolt>,<color>,<bcolor>,<.lTransp.> );
[; hwg_SetCtrlName( <oSay>,<(oSay)> )]
E em hCustomWindow, igual já postaram por aqui:
Código: Selecionar todos
METHOD OnError() CLASS HCustomWindow
LOCAL cMsg := __GetMessage()
LOCAL oError
LOCAL oItem
IF !Empty( oItem := hwg_GetItemByName( ::aControls, cMsg ) )
RETURN oItem
ENDIF
Como isso fica na classe comum de janelas - todo controle herda isso - acaba funcionando.
Muito doido isso.
É isso que hmg não usa, sei lá se dá pra fazer isso sem alterar a parte interna dela.
Transformaria as "mensagens" em DoMethod( "" ) ou coisa parecida (acho que é isso que hmg usa).
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Não entendi na hwgui oDlg:Browse:SetFocus()
no prg
no ppo (traduzido pelo ch)
O nome da variável, quando existe, vai no nome do controle.
É esquisito... com tanto parâmetro, um a mais não faria diferença, apesar que, o ideal seria ser o primeiro parâmetro, e isso mudaria tudo.
Código: Selecionar todos
@ 5, 5 SAY oDlg CAPTION "teste"
Código: Selecionar todos
oDlg := HStatic():New(,,,5,5,,,"teste",,,,,,,,.F. ) ; hwg_SetCtrlName( oDlg,"oDlg" )
É esquisito... com tanto parâmetro, um a mais não faria diferença, apesar que, o ideal seria ser o primeiro parâmetro, e isso mudaria tudo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/