Página 3 de 3
Rotina em Segundo Plano - Thread
Enviado: 06 Abr 2017 00:50
por JoséQuintas
Mas se fizer isso, não vai ser o mesmo do que ter janela única sem multithread?
Ou deixei de entender alguma coisa?
Outra opção, é até usada nos exemplos da GTWVG, que é "transferir" teclado/mouse entre janelas.
Desta forma, a janela anterior fica travada até a atual ser liberada
Aquele hb_gtSelect()
Mas se for pra ter uma janela por vez, ou um processamento por vez, o multithread perde o sentido.
Rotina em Segundo Plano - Thread
Enviado: 06 Abr 2017 20:14
por Christian_Marchiori
Vou explicar melhor cenário.
Tem um software grande desenvolvido em harbour aqui. Me pediram pra que seja possível abrir mais de uma opção do menu ao mesmo tempo, mas não querem em varias janelas, querem tudo na mesma janela e cada opção do menu deve abrir como uma "aba", tipo o chrome, mas com limite de 10 abas. Deve ter a possibilidade de alternar entre as abas e voltar pro menu. Quando o usuário voltar para uma aba aberta anteriormente, deve permanecer os dados conforme ele deixou antes de sair dela, gets, posicionamento do browse, etc..
Diante dessas especificações, achei que talvez seria melhor abrir cada opção do menu em uma thread, mas não sei se seria a melhor abordagem, foi oque me veio em mente.
O menu que existe atualmente é baseado neste exemplo:
https://github.com/harbour/core/blob/ma ... /menu1.prg
Qualquer ideia pra solucionar esse problema é bem vinda ^^
Rotina em Segundo Plano - Thread
Enviado: 06 Abr 2017 20:59
por JoséQuintas
Na mesma janela vai ser complicado, a menos que descubra como funciona o componente tab da gtwvg.
Também pensava nisso.... até surgirem novas versões de Windows.
E também porque para comparar conteúdo de duas janelas, só mesmo tendo as duas uma ao lado da outra.
No Windows 10 é tranquilo.
Rotina em Segundo Plano - Thread
Enviado: 06 Abr 2017 21:03
por JoséQuintas
Na gtwvg tem um exemplo de janela dialog, que usa janelas gtwvg como "sub-janelas" ou componentes.
Mas é difícil entender o fonte.
Nesse exemplo tem 4 janelas gtwvg dentro da principal.