Página 4 de 4

Eval no Clipper 5.3 roda, no Harbour não

Enviado: 05 Mar 2019 23:52
por microvolution
achei essas linhas dentro do wnd.prg da pasta contrib\gtwvg, mas, não tenho noção de como usar o DISABLE() e o ENABLE():

Código: Selecionar todos

METHOD WvgWindow:disable()
   IF wapi_EnableWindow( ::hWnd, .F. )
      ::is_enabled := .F.
      RETURN .T.
   ENDIF
RETURN .F.

METHOD WvgWindow:enable()
   IF wapi_EnableWindow( ::hWnd, .T. )
      ::is_enabled := .T.
      RETURN .T.
   ENDIF
RETURN .F.

Eval no Clipper 5.3 roda, no Harbour não

Enviado: 06 Mar 2019 00:12
por JoséQuintas
menu é no menubar.prg

Provavelmente o DisableItem(), e provavelmente usando o :aMenuItems{}

Eval no Clipper 5.3 roda, no Harbour não

Enviado: 06 Mar 2019 00:27
por microvolution
JoséQuintas escreveu:menu é no menubar.prg
hummm.... devagarinho vou pegando o jeito da coisa. Só peço mais paciência.
pra feed-back, fiz assim e deu certo tanto na desabilitação quanto na habilitação:
- desabilitar todos os componentes do menu:

Código: Selecionar todos

     for I = 1 to len(oMenu)
         oMenu:disableItem( I )
     next I
- habilitar:

Código: Selecionar todos

     for I = 1 to len(oMenu)
         oMenu:enableItem( I )
     next I
pra isso ocorrer e não haver erro, fiz um PUBLIC oMENU lá no início do PRG MAIN.
E, para fechar o usuário e voltar a tela de login e ser criado o menu de acordo com o perfil de cada um, fiz assim:

Código: Selecionar todos

WvgSetAppWindow():oMenu := nil // linhas oferecidas pelo JQuintas para remover o menu.
Agora, sim, só partir para os testes e se tudo ocorrer bem, vou criar um tipo de configuração assim para que o próprio usuário decida qual tipo de menu usar (clipper antigo) ou formato windows:

Código: Selecionar todos

@ xx,xx say "Qual sua preferência do MENU ?" get mTIPO pict pTIPO valid fTIPO()
stat func fTIPO()
     LIMPA_MENSAGEM ()
     if lastkey () <> K_UP
          if mTIPO < 1 .or. mVR_SALINI > 2
               MENSAGEM ('Digite apenas 1 para Menu Tradicional ou 2 para Menu Windows')
               return (.f.)
          endif
     endif
return (SAIDA_VALIDA ())