melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Tá meio parecido com o que já postei aqui.
Me refiro a questão de suporte, a questão de fivewin obrigar versão específica, e recursos.
Mas já está confirmado que fivewin não exige versão específica de harbour.
Estranhei entre HMG3 e HMG Extended, já que são similares no uso, e HMGE deveria se destacar.
HWGUI ser mais fácil é discutível, já que OOP é confusa pra quem vém do Clipper, mas realmente é mais fácil.
GTWVG consta apenas por constar, não pode ser comparada com nenhuma.
Me refiro a questão de suporte, a questão de fivewin obrigar versão específica, e recursos.
Mas já está confirmado que fivewin não exige versão específica de harbour.
Estranhei entre HMG3 e HMG Extended, já que são similares no uso, e HMGE deveria se destacar.
HWGUI ser mais fácil é discutível, já que OOP é confusa pra quem vém do Clipper, mas realmente é mais fácil.
GTWVG consta apenas por constar, não pode ser comparada com nenhuma.
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/
- Mario Mesquita
- Usuário Nível 4

- Mensagens: 613
- Registrado em: 08 Dez 2009 13:47
- Localização: Rio de Janeiro
melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Eu uso a HMG3, acho boa, mas com muito poucas novidades.
Não sei qual para qual das demais eu migraria... talvez a HMGE pela similaridade.
A FiveWin tem muita coisa além das HMG? Algo próximo a um RAD?
Aí talvez fosse interessante...
Não sei qual para qual das demais eu migraria... talvez a HMGE pela similaridade.
A FiveWin tem muita coisa além das HMG? Algo próximo a um RAD?
Aí talvez fosse interessante...
melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Tem também HBQT que é interessante e um MARINAS-GUI que não sei se está ativo ainda https://sourceforge.net/projects/marinas-gui/
Alguns na Europa gostam muito do Xailer, parece que é muito bom, nunca testei.
Eu usuaria HWGUI se fosse escolher... por ser open, Kresin, etc...
Não uso nenhuma.
Alguns na Europa gostam muito do Xailer, parece que é muito bom, nunca testei.
Eu usuaria HWGUI se fosse escolher... por ser open, Kresin, etc...
Não uso nenhuma.
Mario
Especializado em projetos de TI, suporte técnico, consultoria, freelancer, gestão de tráfego web.
Especializado em projetos de TI, suporte técnico, consultoria, freelancer, gestão de tráfego web.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Eu criei o DLGAUTO, um aplicativo automático que pode ser compilado com qualquer lib.
É uma forma rápida de comparar as LIBs.
Também pode ser usado em multithread, usando LIBs diferentes.
HMG Extended deixou a desejar, começa com bug em VALID, passando por dialog modal.
Acabei não testando muito HMG3 e OOHG, porque se testar uma LIB já é um saco, testar várias piorou.
Vai parecer piada, mas achei HMG 3 mais avançada do que HMG Extended.
Pode perder em recursos, mas se comporta melhor.
Em multithread os problemas de HMG Extended ficam mais evidentes, é inusável, só mesmo HWGUI e FIVEWIN.
Como passei a usar pra valer com multithread, miniguis ficaram de fora, muita duplicidade de função com FIVEWIN.
Sugiro quem usa HMG3 que continue com ela, e não troque antes de ter certeza que tudo vai continuar funcionando.
E quem quiser fazer teste rápido, é só usar o dlgauto, que vai ver alguns dos problemas que acontecem sem precisar ficar criando fonte.
Se trocar a validação usando LOSTFOCUS por VALID, vai ver o problema com VALID, que acontece quando uma dialog com valid chama outra com valid. (em HMG Extended)
E outros problemas mais.
O legal de multithread é que é uma prova de fogo: ou a lib funciona ou não. é onde problemas com dialog modal acontecem com um uso relativamente básico.
Reforçando isso de multithread:
Multithread é igual EXEs separados.
Compilar com multithread não transforma nenhum aplicativo ou lib em multithread.
É o usuário quem vai decidir se chama alguma rotina usando multithread ou não.
Se o usuário não fizer isso, continua tudo normal, tanto faz se compilar com -mt ou não, poderia ser até o default de compilação do harbour.
Ao usar multithread, no uso normal, as variáveis PUBLIC e PRIVATE não vão ficar visíveis na outra thread.
De novo: igual EXEs separados, um EXE não enxerga as variáveis do outro.
Pra uma LIB igual minigui, _HMG_SYSDATA, isso significaria poder ter uma minigui em cada thread/EXE.
Mas se a LIB não usa suas próprias variáveis pra fazer o controle, não tem controle.
Por isso em multithread os problemas aparecem mais rápido, porque tela e variáveis são diferentes.
Mas voltando: os problemas que mencionei com HMG Extended não tem a ver com multithread, apenas ficaram mais em evidência.
Na HMG 3 tem SET WINDOW MAIN OFF (não sei se é desse jeito o comando) E FUNCIONA.
Na Hmg Extended, ele foi introduzido apenas pra compatibilidade de fonte, não pra funcionar igual.
É justamente aí que o bicho pega, o funcionamento errado da LIB fica em evidência.
E em multithread... seria equivalente a SET WINDOW MAIN OFF..... pra resultados melhores.
Se WINDOW MAIN OFF não funciona bem nela SEM MT, funciona pior com MT.
E porque isso não funciona direito ? porque os controles internos estão errados, usando referência errada, talvez a MAIN.
Aquele negócio de dizer:
a lib foi feita assim, é pra ser usada assim....
pode ser interpretado como: a lib foi feita pra funcionar assim, dá defeito se usar de outra forma.
Por isso cuidado ao trocar de HMG 3 para HMG Extended.
Pode ter surpresas.
Vai ter que avaliar o custo/benefício da mudança, pode ganhar recursos e defeitos, vai ter que avaliar se vale a pena.
De repente, conforme o uso, tudo funciona bem.
É uma forma rápida de comparar as LIBs.
Também pode ser usado em multithread, usando LIBs diferentes.
HMG Extended deixou a desejar, começa com bug em VALID, passando por dialog modal.
Acabei não testando muito HMG3 e OOHG, porque se testar uma LIB já é um saco, testar várias piorou.
Vai parecer piada, mas achei HMG 3 mais avançada do que HMG Extended.
Pode perder em recursos, mas se comporta melhor.
Em multithread os problemas de HMG Extended ficam mais evidentes, é inusável, só mesmo HWGUI e FIVEWIN.
Como passei a usar pra valer com multithread, miniguis ficaram de fora, muita duplicidade de função com FIVEWIN.
Sugiro quem usa HMG3 que continue com ela, e não troque antes de ter certeza que tudo vai continuar funcionando.
E quem quiser fazer teste rápido, é só usar o dlgauto, que vai ver alguns dos problemas que acontecem sem precisar ficar criando fonte.
Se trocar a validação usando LOSTFOCUS por VALID, vai ver o problema com VALID, que acontece quando uma dialog com valid chama outra com valid. (em HMG Extended)
E outros problemas mais.
O legal de multithread é que é uma prova de fogo: ou a lib funciona ou não. é onde problemas com dialog modal acontecem com um uso relativamente básico.
Reforçando isso de multithread:
Multithread é igual EXEs separados.
Compilar com multithread não transforma nenhum aplicativo ou lib em multithread.
É o usuário quem vai decidir se chama alguma rotina usando multithread ou não.
Se o usuário não fizer isso, continua tudo normal, tanto faz se compilar com -mt ou não, poderia ser até o default de compilação do harbour.
Ao usar multithread, no uso normal, as variáveis PUBLIC e PRIVATE não vão ficar visíveis na outra thread.
De novo: igual EXEs separados, um EXE não enxerga as variáveis do outro.
Pra uma LIB igual minigui, _HMG_SYSDATA, isso significaria poder ter uma minigui em cada thread/EXE.
Mas se a LIB não usa suas próprias variáveis pra fazer o controle, não tem controle.
Por isso em multithread os problemas aparecem mais rápido, porque tela e variáveis são diferentes.
Mas voltando: os problemas que mencionei com HMG Extended não tem a ver com multithread, apenas ficaram mais em evidência.
Na HMG 3 tem SET WINDOW MAIN OFF (não sei se é desse jeito o comando) E FUNCIONA.
Na Hmg Extended, ele foi introduzido apenas pra compatibilidade de fonte, não pra funcionar igual.
É justamente aí que o bicho pega, o funcionamento errado da LIB fica em evidência.
E em multithread... seria equivalente a SET WINDOW MAIN OFF..... pra resultados melhores.
Se WINDOW MAIN OFF não funciona bem nela SEM MT, funciona pior com MT.
E porque isso não funciona direito ? porque os controles internos estão errados, usando referência errada, talvez a MAIN.
Aquele negócio de dizer:
a lib foi feita assim, é pra ser usada assim....
pode ser interpretado como: a lib foi feita pra funcionar assim, dá defeito se usar de outra forma.
Por isso cuidado ao trocar de HMG 3 para HMG Extended.
Pode ter surpresas.
Vai ter que avaliar o custo/benefício da mudança, pode ganhar recursos e defeitos, vai ter que avaliar se vale a pena.
De repente, conforme o uso, tudo funciona bem.
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/
melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Só minha pequena contribuição com opinião da minha própria experiência:
Um tempo atrás, fiz algo em HMG 3 e funcionou bem.
Tentei com HMG Ext e não foi bem... então o que eu fiz foi usar HMG 3 e pegar emprestado somente o que eu precisei da HMG Ext (em C mesmo), ficou bom, mas tem que tomar cuidado por que possivelmente (e provavelmente) vai ter que adaptar alguma coisa para rodar na HMG 3.
No final das contas, com as mudanças de versão, começaram os problemas, cada versão nova o código deixava de funcionar, tinha que adaptar várias coisas... abandonei, achei que dava muito trabalho pelo resultado, apesar que é legal ver um aplicativo 100% Windows rolando na tela, fica muito legal, mas muito "artesanal", pelo trabalho não valia a pena.
Sempre fiquei interessado em HWGUI mas a esta altura do campeonato, considerando tudo que tenho para fazer, a minha situação atual de vida, etc... não estou querendo me aplicar a aprender HWGUI, vou manter somente o que já tenho, com o que sei e domino bem e levar adiante sem evoluir, pois é... as vezes temos que reconhecer onde estacionar devido às limitações particulares de cada um, mas se tiver que fazer algo visual 100% Windows, seria em HWGUI, mesmo que não seja tão poderosa como FiveWin ou Xailer, seria a proposta gratuíta open que mais me chamou atenção.
Veja um exemplo em HWGUI: https://www.kresin.ru/en/ksorg.html -> dá para o gasto...
O editor do Kresin também é interessante... vou dar uma olhada com mais carinho: https://www.kresin.ru/en/hbedit.html
Um tempo atrás, fiz algo em HMG 3 e funcionou bem.
Tentei com HMG Ext e não foi bem... então o que eu fiz foi usar HMG 3 e pegar emprestado somente o que eu precisei da HMG Ext (em C mesmo), ficou bom, mas tem que tomar cuidado por que possivelmente (e provavelmente) vai ter que adaptar alguma coisa para rodar na HMG 3.
No final das contas, com as mudanças de versão, começaram os problemas, cada versão nova o código deixava de funcionar, tinha que adaptar várias coisas... abandonei, achei que dava muito trabalho pelo resultado, apesar que é legal ver um aplicativo 100% Windows rolando na tela, fica muito legal, mas muito "artesanal", pelo trabalho não valia a pena.
Sempre fiquei interessado em HWGUI mas a esta altura do campeonato, considerando tudo que tenho para fazer, a minha situação atual de vida, etc... não estou querendo me aplicar a aprender HWGUI, vou manter somente o que já tenho, com o que sei e domino bem e levar adiante sem evoluir, pois é... as vezes temos que reconhecer onde estacionar devido às limitações particulares de cada um, mas se tiver que fazer algo visual 100% Windows, seria em HWGUI, mesmo que não seja tão poderosa como FiveWin ou Xailer, seria a proposta gratuíta open que mais me chamou atenção.
Veja um exemplo em HWGUI: https://www.kresin.ru/en/ksorg.html -> dá para o gasto...
O editor do Kresin também é interessante... vou dar uma olhada com mais carinho: https://www.kresin.ru/en/hbedit.html
Mario
Especializado em projetos de TI, suporte técnico, consultoria, freelancer, gestão de tráfego web.
Especializado em projetos de TI, suporte técnico, consultoria, freelancer, gestão de tráfego web.
- Mario Mesquita
- Usuário Nível 4

- Mensagens: 613
- Registrado em: 08 Dez 2009 13:47
- Localização: Rio de Janeiro
melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Boa tarde.
Poxa, pra mim a HMGE era um upgrade da HMG3 com vantagens. Mas se tem coisas que podem falhar, melhor deixar quieto por hora. A 3 me atende bem então é seguir e ver o que surge de bom pela frente.
Saudações,
Mario.
Poxa, pra mim a HMGE era um upgrade da HMG3 com vantagens. Mas se tem coisas que podem falhar, melhor deixar quieto por hora. A 3 me atende bem então é seguir e ver o que surge de bom pela frente.
Saudações,
Mario.
melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Alguém tem contato com os responsáveis pelo forum HMG?
Seria interessante pedir para eles liberarem o Brasil de ser bloqueado, somente usando proxy dá para acessar o forum e isso atrapalha até eles pois os desenvolvedores brasileiros são top e podem contribuir bastante se eles permitirem acesso.
Seria interessante pedir para eles liberarem o Brasil de ser bloqueado, somente usando proxy dá para acessar o forum e isso atrapalha até eles pois os desenvolvedores brasileiros são top e podem contribuir bastante se eles permitirem acesso.
Mario
Especializado em projetos de TI, suporte técnico, consultoria, freelancer, gestão de tráfego web.
Especializado em projetos de TI, suporte técnico, consultoria, freelancer, gestão de tráfego web.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
melhor oohg, hmg3, hmg extended, hwgui, fivewin ou gtwvg
Tem gente usando HMG Extended sem problemas.
Tudo depende do uso.
Geralmente usam o modal pra não abrir mais nada, e podem contornar o retorno.
Se o fórum da minigui dá acesso via proxy, é acessar via proxy e colocar lá a questão.
Então....
1) Aí também entra a questào do dlgauto
Foi feito pra isso, pra testes, sem precisar alterar o aplicativo.
Se lá funciona o que interessa, aí altera o aplicativo pra fazer igual, e vai saber que funciona
2) Aí entra outra questão legal do multithread: poder usar mais de uma lib.
Pode fazer testes no própro aplicativo, alterando módulos isolados.
3) NÃO que seja importante, mas facilita
Tenho a criação de um pacote na internet com todas as libs, menos fivewin que é comercial.
Pelo menos facilita testar todas, sem ter que ficar criando configurações especiais.
Criei HBPs diferentes dos originais, apenas pra facilitar compilação, mas tudo original continua lá.
Ao invés das invenções das LIBs:
hbmk2 fonte.prg hwgui.hbc
hbmk2 fonte.prg hmg3.hbc
hgmk2 fonte.prg hmge.hbc
hbmk2 fonte.prg oohg.hbc
Mas não gerei os extras, como hbmysql, hbssl, hbcurl, rddsql, etc. porque não uso, e não me interessa ir atrás de como se faz isso.
O mesmo vale pra bcc e msvc.
Quem precisa dessas coisas que procure como se faz.
Não uso pra nada.
E se quiser recriar as libs, mesma coisa:
hbmk2 *.hbp
Só na hwgui, precisa fazer individual, porque a de gerar em DLL precisa ser a última, não dá pra usar *.hbp
Como configurar esse pacote:
Baixe em uma pasta qualquer, supondo que dê o nome de PACOTE, que vai ser o harbour
SET PATH=c:\pacote;c:\pacote\mingw32\bin
Só isso e pode usar tudo, harbour e todas as libs.
Se não gostar, apague a pasta PACOTE e pronto.
Tem com mingw 7.3, 14.2 e 15.0
Se achar que tá tudo bem, renomeia PACOTE pra HARBOUR, e use em definitivo.
Ou.... neste momento sabendo que vai usar pra valer... baixe o original e configure.
Nota:
Esse meu pacote, HARBOUR e LIBs tem repositório separado, dos fontes, e podem ser atualizados.
Apenas a geração automática, feita pelo próprio github, baixa tudo, compila do zero, e gera o pacote de tudo junto.
Tudo depende do uso.
Geralmente usam o modal pra não abrir mais nada, e podem contornar o retorno.
Se o fórum da minigui dá acesso via proxy, é acessar via proxy e colocar lá a questão.
Então....
1) Aí também entra a questào do dlgauto
Foi feito pra isso, pra testes, sem precisar alterar o aplicativo.
Se lá funciona o que interessa, aí altera o aplicativo pra fazer igual, e vai saber que funciona
2) Aí entra outra questão legal do multithread: poder usar mais de uma lib.
Pode fazer testes no própro aplicativo, alterando módulos isolados.
3) NÃO que seja importante, mas facilita
Tenho a criação de um pacote na internet com todas as libs, menos fivewin que é comercial.
Pelo menos facilita testar todas, sem ter que ficar criando configurações especiais.
Criei HBPs diferentes dos originais, apenas pra facilitar compilação, mas tudo original continua lá.
Ao invés das invenções das LIBs:
hbmk2 fonte.prg hwgui.hbc
hbmk2 fonte.prg hmg3.hbc
hgmk2 fonte.prg hmge.hbc
hbmk2 fonte.prg oohg.hbc
Mas não gerei os extras, como hbmysql, hbssl, hbcurl, rddsql, etc. porque não uso, e não me interessa ir atrás de como se faz isso.
O mesmo vale pra bcc e msvc.
Quem precisa dessas coisas que procure como se faz.
Não uso pra nada.
E se quiser recriar as libs, mesma coisa:
hbmk2 *.hbp
Só na hwgui, precisa fazer individual, porque a de gerar em DLL precisa ser a última, não dá pra usar *.hbp
Como configurar esse pacote:
Baixe em uma pasta qualquer, supondo que dê o nome de PACOTE, que vai ser o harbour
SET PATH=c:\pacote;c:\pacote\mingw32\bin
Só isso e pode usar tudo, harbour e todas as libs.
Se não gostar, apague a pasta PACOTE e pronto.
Tem com mingw 7.3, 14.2 e 15.0
Se achar que tá tudo bem, renomeia PACOTE pra HARBOUR, e use em definitivo.
Ou.... neste momento sabendo que vai usar pra valer... baixe o original e configure.
Nota:
Esse meu pacote, HARBOUR e LIBs tem repositório separado, dos fontes, e podem ser atualizados.
Apenas a geração automática, feita pelo próprio github, baixa tudo, compila do zero, e gera o pacote de tudo junto.
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/
