Clipper On Line • Ver Tópico - Sugestão pra menu
Mudar para estilo Clássico
Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.
Postar uma resposta

Sugestão pra menu

07 Jun 2020 13:09

Tô precisando de uma sugestão....

Tava olhando o menu Windows....

menuw.png


Qual a diferença de um menu console?
À primeira vista, só pocisionamento e cores.

menuc.png


Então alterei esta linha:

Código:
            BoxMenu( mLini + iif( Empty( mTitulo ), 0, 1 ) + mOpc, mColi + iif( mColi < ( MaxCol() - 80 ), 40, -40 ), mMenuOpt[ mOpc, 2 ], @mMenuOpt[ mOpc, 5 ], mMenuOpt[ mOpc, 1 ], .T., .T., aMouseConv, nLevel + 1 )


Mas fica esquisito, porque deixa duvidoso o foco atual.

menu2.png


A sugestão é sobre como poderia dar destaque ao atual, que pode ser movido pelas setas.

Nota:
Meu clique já funciona em qualquer lugar de qualquer menu, então mostrar completo acaba sendo até mais interessante.
Mesmo assim, fica pendente o menu voltando, e até setas para os lados nesses subníveis.

Sugestão pra menu

07 Jun 2020 13:29

Uia que interessante...

Mas agora tive que acrescentar o parâmetro de direção
Código:
STATIC FUNCTION BoxMenu( mLini, mColi, mMenuOpt, mOpc, mTitulo, mSaiSetas, mSaiFunc, aMouseConv, nLevel, nDirecao )


e analisar conforme direção

Código:
            IF nDirecao == 1
               IF mColi > MaxCol() - 80
                  nDirecao := -1
               ENDIF
            ELSE
               IF mColi < 40
                  nDirecao := 1
               ENDIF
            ENDIF
            BoxMenu( mLini + iif( Empty( mTitulo ), 0, 1 ) + mOpc, mColi + ( nDirecao * 40 ), mMenuOpt[ mOpc, 2 ], @mMenuOpt[ mOpc, 5 ], mMenuOpt[ mOpc, 1 ], .T., .T., aMouseConv, nLevel + 1, nDirecao )


Só reforçando:
Não está sendo mostrado à toa, o usuário pode clicar em qualquer lugar que funciona.
Não tenho tanto nível assim, apenas estou testando se está funcionando.
Anexos
niveis.png

Sugestão pra menu

07 Jun 2020 13:37

E o fonte do menu é o de sempre, um único array.

Código:
      MenuOption( "Testes" )
         MenuDrop()
         MenuOption( "Testes SPED" )
            MenuDrop()
            MenuOption( "Validar XML",             "PTESVALIDAXML" )
            MenuUnDrop()
         MenuOption( "Testes JPA" )
            MenuDrop()
            MenuOption( "Clientes Excel por regiao",      "PTESTREGIAO" )
            MenuOption( "Teste Filtro",                   "PTESFILTRO" )
            MenuOption( "Windows Style",                  "PTESWIN" )
            MenuOption( "SQL Backup",                     "ZE_SQLBACKUP" )
            MenuOption( "SQL Exportar para SQL",          "SQLFROMDBF" )
            MenuOption( "Comparar bases SQL",             "PTESBASE" )
            MenuOption( "Checking QueryCreate()",         "PTESQUERYC" )
            MenuOption( "Consultar CEPs",                 "PTESCEP" )
            MenuOption( "Alert WVG",                      "PALERT" )
            MenuOption( "Test niveis 1" )
               MenUDrop()
                  MenuOption( "Test niveis 2" )
                  MenuDrop()
                     MenuOption( "Test niveis 3" )
                     MenuDrop()
                        MenuOption( "test niveis 4", "XX" )
                     MenuUnDrop()
                  MenuUnDrop()
               MenuUnDrop()
            MenuUnDrop()
         MenuOption( "Testes Aplicativo" )
            MenuDrop()
            MenuOption( "Manual Imprimir",              "ZE_HELPPRINT" )
            MenuOption( "Retorna preços diferenciados", "PPRECANCEL" )
            MenuUnDrop()
         MenuUnDrop()

Sugestão pra menu

07 Jun 2020 13:54

o menu em ação

Sugestão pra menu

07 Jun 2020 15:29

Nao sei se eu entedi direito o que voce quer.
Mas a melhor forma de nao confundir o usuario é padronizar.
Eu padronizei os submenus sempre abrirem a direita, com excecao se nao couber na tela que dai retorna abaixo.
Acho tambem que testar com mais niveis do que voce ira utilizar ao usuario fara voce desfocar e perder tempo.
Eu acho que 3 niveis no maximo 4 esta de bom tamanho.
Vou trabalhar numa tecla de pesquisa/busca para menus com autocomplete. Desta forma o usuario podera pesquisar de forma bem rapida, inclusive utilizando apelidos (caso tenha). Nesta pesquisa o sistema ira mostrar primeiro os 5 ultimos menus utilizados (por usuario no que chamei de perfil do aspecto). Desta forma havera uma pilha dos ultimos 30 itens de menus utilizados, dai ordeno pela qtde de ocorrencia + pultima data utilizada, e pego os cinco primeiros da pilha. Depois faco uma uniao com os itens de menu. Ficaria parecido com os "mais recentes" do windows.

Sugestão pra menu

07 Jun 2020 15:30

Quando me referi a 3 ou 4 niveis, estou falando apenas de popup, sem considerar o menu principal/pulldown (nivel 0).

Sugestão pra menu

07 Jun 2020 17:46

Tava pensando em deixar o conjunto de menu atual, onde funcionam as setas, em destaque.
Mas acho que só vai complicar, sem vantagem útil.

Sobre a montagem: Do jeito que fiz vai pra frente enquanto cabe, a partir daí, vai pra trás enquanto cabe.

Muitas opções no menu, nem são usadas, porque servem apenas pra definir se o usuário pode acessar.
Acaba usando uma subopção da tela aonde está.

Mas já mudei isso pra secundário.
É que pensando bem, vou criar menus em quase todas as telas, com assuntos relacionados.
Button até deixa de ser opção, porque seria button demais.

Melhor deixar a "revolução" disso tudo pra depois.

Sugestão pra menu

07 Jun 2020 18:48

Essa pratica de deixar menus com assuntos relacionados é bem interessante. Fica mais intuitivo. Quanto maior o menu mais sentido faz este uso de assuntos relacionados. Senao fica dificil encontrar o que se deseja.
HOje vejo o agrupamentos de assuntos relacionados tambem em menus de configuracoes. Antes tinhamos uma unica tela de configuracoes para o sistema todo. Hoje vejo menus de configuracoes especificos para cada tela. Esta se tornando uma tendencia.
Postar uma resposta