Clipper On Line • Ver Tópico - Sugestão pra menu

Sugestão pra menu

Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.

Moderador: Moderadores

 

Sugestão pra menu

Mensagempor JoséQuintas » 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:

            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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Sugestão pra menu

Mensagempor JoséQuintas » 07 Jun 2020 13:29

Uia que interessante...

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


e analisar conforme direção

            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
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Sugestão pra menu

Mensagempor JoséQuintas » 07 Jun 2020 13:37

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

      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()
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Sugestão pra menu

Mensagempor JoséQuintas » 07 Jun 2020 13:54

o menu em ação

José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Sugestão pra menu

Mensagempor lwinter » 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.
lwinter
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 123
Data de registro: 07 Mar 2011 12:08
Cidade/Estado: Campinas - SP
Curtiu: 1 vez
Mens.Curtidas: 12 vezes

Sugestão pra menu

Mensagempor lwinter » 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).
lwinter
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 123
Data de registro: 07 Mar 2011 12:08
Cidade/Estado: Campinas - SP
Curtiu: 1 vez
Mens.Curtidas: 12 vezes

Sugestão pra menu

Mensagempor JoséQuintas » 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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Sugestão pra menu

Mensagempor lwinter » 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.
lwinter
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 123
Data de registro: 07 Mar 2011 12:08
Cidade/Estado: Campinas - SP
Curtiu: 1 vez
Mens.Curtidas: 12 vezes




Retornar para Contribuições, Dicas e Tutoriais

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 17 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro