Clipper On Line • Ver Tópico - duvidas sobre, minigui, harbour, xharbour hmg

duvidas sobre, minigui, harbour, xharbour hmg

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor RAIMUNDO SANTANA » 27 Ago 2013 23:55

Olá, Pessoal!

Estou vindo do puro clipper com o objetivo de dar visual e possibilitar rodar em maquinas arquitetura 64x o sistema de folha que possuo,

Ha anos que venho tentando migrar esse aplicativo e desistindo. Leio muita coisa, ja tomei curso de delphi e nao utilizei e acabei esquecendo tudo do pouco que aprendi. Comprei um livro de fivewin, mas nao tinha recurso para comprar a biblioteca (isso ha uns oito anos). Tentei compilar com o harbour e tome-lhe erros. Cansava, parava, passava um tempo voltava a tentar. Enfim eis que estou aqui buscando auxilio.

Soube que HMG reúne tudo num canto so e que isso facilita a compilação etc....

Onde baixar essa biblioteca ja com o harbour e bcc, como começar afinal? existem livros, manuais. Quem pode me ajudar a dar o primeiro passo. Agradeço de coração.
Se eu conseguir migrar esse sistema acho que vou sair gritando de alegria....
Raimundo Santana
RAIMUNDO SANTANA
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 2
Data de registro: 27 Ago 2013 23:40
Cidade/Estado: SALVADOR /BAHIA
Curtiu: 0 vez
Mens.Curtidas: 0 vez

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor Jairo Maia » 28 Ago 2013 08:02

Olá Raimundo, Seja bem vindo ao fórum.

RAIMUNDO SANTANA escreveu:como começar afinal? existem livros, manuais
Raimundo, tem aqui no fórum um tutorial bem didático escrito pelo colega Pablo César, que vai lhe ajudar bastante. Tentei encontrar e postar o link aqui, mas não achei, depois com mais calma procuro e posto o link, caso algum colega não antecipe isso.

Por outro lado, aconselho você começar com a HMG 3.0.46, que é a última versão estável em ANSI e permite facilmente você migrar um sistema em modo console. Para baixar essa versão acesse esse link: HMG 3.0.46 As versões posteriores são em Unicode.

RAIMUNDO SANTANA escreveu:Onde baixar essa biblioteca ja com o harbour e bcc
Ao instalar a HMG IDE fica tudo pronto para você iniciar, mas com MinGw, não BCC.

Editado às 08:09:
Raimundo, este é o link: Compilar através da IDE da HMG versão 3.0.35 Onde está 3.0.35, não se preocupe, pois tudo vale igualmente para a versão 3.0.46. Bons estudos.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar de usuário

Jairo Maia
Colaborador

Colaborador
 
Mensagens: 2733
Data de registro: 16 Ago 2010 13:46
Cidade/Estado: Campinas-SP
Curtiu: 371 vezes
Mens.Curtidas: 305 vezes

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor RAIMUNDO SANTANA » 29 Ago 2013 10:36

Primeiramente, Obrigado!

Nao encontrei o tutorial que voce citou.

Um duvida: O programa escrito em Harbour é convertido para C e so depois compilado. Trabalhando com a biblioteca gráfica Minigui o resultado sera um executavel em 32 bits com Visual Gráfico. Baixando a HMG o compilador C ja vem incluido?
RAIMUNDO SANTANA
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 2
Data de registro: 27 Ago 2013 23:40
Cidade/Estado: SALVADOR /BAHIA
Curtiu: 0 vez
Mens.Curtidas: 0 vez

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor Jairo Maia » 29 Ago 2013 10:48

Olá Raimundo,

RAIMUNDO SANTANA escreveu:Nao encontrei o tutorial que voce citou.
Veja que editei minha mensagem alguns minutos depois para colocar o link do tutorial. o link está acima.

RAIMUNDO SANTANA escreveu:Baixando a HMG o compilador C ja vem incluido?
Sim. Após instalar fica pronto para compilar um executável 32bits. Porém, para modo gráfico é outra história. Veja o tutorial do Pablo para entender melhor.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar de usuário

Jairo Maia
Colaborador

Colaborador
 
Mensagens: 2733
Data de registro: 16 Ago 2010 13:46
Cidade/Estado: Campinas-SP
Curtiu: 371 vezes
Mens.Curtidas: 305 vezes

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor rcb2002 » 01 Set 2013 13:31

Olá pessoal...

Pra engrossar a discussâo, quero propor uma reflexão: Eu uso a Minigui, estou bem satisfeito. Já a IDE, só me adaptei à do Harbour (que veio em uma pasta Harbour no Minigui). Mas já aconteceu de precisar de comandos que não existiam na Minigui, mas em Harbour sim (ou xHarbour, não sei, como recentemente precisei do IP de uma máquina e tem um comando pra isso lá, mas não no meu Minigui eXtended). Daí eu pergunto: de quem é a maioria? É só por opção mesmo ou um dos dois leva mais vantagem sobre o outro? Pra quem está começando assim como eu ou o colega da pergunta aí... (x)Harbour ou Minigui?

Obrigado
rcb2002
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 57
Data de registro: 19 Jan 2010 22:16
Cidade/Estado: Salvador
Curtiu: 0 vez
Mens.Curtidas: 1 vez

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor amarante » 03 Set 2013 19:17

Olá para todos.
Este é meu primeiro post neste forum.
Trabalho com linguagens em padrão XBASE desde 1982. Já usei os mais variados compiladores tanto em Unix/Linux, CP/M (alguém lembra desse OS?) e Windows.
Apesar de já trabalhar com HMG e Minigui a algum tempo eu também tenho algumas dúvidas.
Sabemos que para HMG e Minigui Extended a base é o Harbour e em alguns casos o xHarbour (que pelo que sei este último ficou meio descontinuado e sempre me pareceu instável, apesar de ter ótimas rotinas que não existem em Harbour), mas minha dúvida vai em qual é o melhor dos dois: HMG ou MingiGui Extend.
Hoje para projetos profissionais somente estou utilizando o HMG do Roberto Lopes pois o acho mais estável. Testes mais pesados que fiz com o Minigui Extended (que é um HMG com algumas funções melhoradas) não me foram confiaveis.
Não sei se o motivo foi o compilador usado, pois no HMG uso o MingW e no Minigui Extend o Borland.
Não estou aqui fazendo apologia ao HMG e antes que eu seja bombardeado com críticas dos fãs do MiniGui quero dizer que não deixei de usar o Minigui. Eu tenho aplicações pessoais feitas em Minigui que me satisfazem mais que o HMG, já que no Minigui temos algumas rotinas fantásticas como por exemplo o BUTTONEX cujo visual é bem melhor que o do HMG.
Mas vamos a minhas dúvidas:
Seria possível utilizar um Híbrido, ou seja, uma mistura entre o HMG e o MiniGui Extend sem ter que alterar as bibliotecas dos mesmos?
Alguém já fez essa experiência?
Poderia nos ensinar o caminho das pedras?

Abraços
Amarante
Avatar de usuário

amarante
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 4
Data de registro: 03 Set 2013 18:47
Cidade/Estado: Araruama/RJ
Curtiu: 1 vez
Mens.Curtidas: 1 vez

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor VanderSimples » 04 Set 2013 14:38

Raimundo,

O Post que me ajudou muito pra converter meus sistemas de Clipper p/ Harbour foi este: viewtopic.php?f=45&t=12658
VanderSimples
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 25
Data de registro: 15 Jul 2013 15:39
Cidade/Estado: Marilia
Curtiu: 0 vez
Mens.Curtidas: 2 vezes

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor Pablo César » 04 Set 2013 17:17

Oi Amarante, seja bem vindo ao fórum !
É bom ter você por aqui também. :)Pos

amarante escreveu:Seria possível utilizar um Híbrido, ou seja, uma mistura entre o HMG e o MiniGui Extend sem ter que alterar as bibliotecas dos mesmos?
Alguém já fez essa experiência?
Bom como você mesmo disse, são compiladores diferentes. As bibliotecas do HMG são .a e as do Minigui Extended são .lib. Eu não acho que isto seja possível, sem ter que padronizar as bibliotecas de um para o outro. O que resta (como ambos são OPENSOURCE) é criar recursos adicionais para surtirem o mesmo efeito (ou parecidos).
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor amarante » 04 Set 2013 19:50

Pablo, há muito acesso esse post, mas só agora resolvi me inscrever.
Eu sei das diferenças das libs, mas eu estava pensando em tentar recompilar algumas funções do Minigui com o HMG.
Há poucos dias, em um sistema em HMG, precisei de um Grid com CheckBox, rotina que sei existir em Minigui. Mas como o meu sistema era em HMG tive que criar uma grid a parte.
Sei que seria fácil pegar um dos fontes OPENSOURCE e alterar, mas o que acontece é que acabamos ficando limitados e presos a versão do fonte alterado e bem sabemos (ainda bem) que nossas HMG e MiniGui estão sempre em evolução.
E pelas últimas notícias em breve teremos HMG for WEB, que desejo participar. Precisamos ficar sempre prontos para novas plataformas.
Abraços
Avatar de usuário

amarante
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 4
Data de registro: 03 Set 2013 18:47
Cidade/Estado: Araruama/RJ
Curtiu: 1 vez
Mens.Curtidas: 1 vez

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor Bettu » 14 Nov 2013 17:20

Olá pessoal,

Eu sou nova aqui no fórum, mas clippera de muitos anos. Eu já tinha desistido até que me procuraram para fazer algumas modificações e acrescentar a parte gráfica aos programas em clipper 5.2. Por isso, voltei e feliz de conhecer o fórum e ver que ainda tinha possibilidades. Baixei seguindo as indicações daqui do fórum o HMG IDE e realizei as modificações básicas, como acrescentar o main(), mudar de do proc para proc(), etc. Estava dando tudo certo até que acrescentei outro programa para tinha várias validações no get, por exemplo: @17,17 get m_lote when(w_agreg) valid buslote(m_lote)

que logo no mesmo programa estão as function:
Func buslote(w_lote)

if w_lote="   "
   @ 17,17 say spac(24)
   retu .t.
else
   w_ok=busdat(w_lote,17,21,'f_nomlot','avlote')
   if w_ok
         m_motivo="  "
         @18,19 say spac(26)
         @18,21 say m_has pict '@Z 99999.9'
   else
        @ 17,17 say spac(24)
        retu .f.
   endif
endif
retu .t.

na compilação logo de ter incorporado esse programa, no linker aparece uma mensagem de erro: Multiple definition of 'ASIG e na linha debaixo:
Linker .hbmk/win/mingw/avticket.o:avticket.prg: multiple definition of 'BUSLOTE
Esse erro vai aparecendo com a maioria das funções que uso no VALID do GET, já que tentei cometar com * a línea do BUSLOTE, e passou o erro para outra function.
Alguém conhece esse erro e como solucioná-lo? Além das dicas do fórum de como migrar de clipper para harbour, existe algum manual ou lista com as maiorias dos comando que temos que cambiar de clipper para hmg.
Muito obrigada
Nota de Moderação:
Toledo: Mensagem editada para colocar a tag [ code ]
Veja como utilizar esta tag: Clique aqui
Bettu
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 9
Data de registro: 14 Nov 2013 15:25
Cidade/Estado: Curitiba
Curtiu: 0 vez
Mens.Curtidas: 0 vez

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor Pablo César » 14 Nov 2013 18:46

Olá Bet seja bem vinda ao fórum !

Bettu escreveu:multiple definition of 'BUSLOTE
Isto quer dizer que nos prgs que você está compilando, a função BUSLOTE está repetida. Isso não pode acontecer, nem no Harbour nem no Clipper. Verifique os prgs envolvidos e deixe apenas um (claro isto se a função for a mesma).

Além das dicas do fórum de como migrar de clipper para harbour, existe algum manual ou lista com as maiorias dos comando que temos que cambiar de clipper para hmg.
Você disse bem ao começo da sentença: do Clipper para o Harbour.

Harbour == Clipper (100% compatível)

HMG = Biblioteca gráfica. Programação GUI

A programação GUI é totalmente diferente a programação CONSOLE que os clippeiros (como eu, rs) estivemos acostumados a ver. Conceitos totalmente diferentes. A biblioteca HMG, serve para deixar em modo WIndows (por assim dizer). O Harbour é que faz a ponte do que era em Clipper e Harbou+HMG geram o executável GUI.

Existe várias leitura (Guia de Referência) para o Harbour:
http://www.elektrosoft.it/tutorials/Harbour-Reference-Guide/harbour-reference-guide.htm
http://www.harbour.vouch.info/index.html
http://www.marinas-gui.org/projects/harbour_manual/
http://vivaclipper.wordpress.com/2012/12/26/harbour-2/

Sobre HMG:
https://sites.google.com/site/hmgweb/
http://www.elektrosoft.it/tutorials/hmg/hmg.asp
http://vivaclipper.wordpress.com/2012/12/26/hmg/

E na própria subpasta DOCS da pasta onde foi instalado o HMG encontrarás todos os comandos.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar de usuário

Pablo César
Usuário Nível 7

Usuário Nível 7
 
Mensagens: 5312
Data de registro: 31 Mai 2006 10:22
Cidade/Estado: Curitiba - Paraná
Curtiu: 142 vezes
Mens.Curtidas: 152 vezes

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor Bettu » 15 Nov 2013 08:57

Olá Pablo, muito obrigada pelas informações!
Em relação ao erro: multiple definition of 'BUSLOTE, eu já tinha procurado se estava repetida, mas não esta, como assim também as outras funções que vão aparecendo com a mesma mensagem de erro. As funções como buslote, estão usadas no valid do get e são definidas no mesmo prg.
Então, eu posso para migrar e não jogar no lixo o programa feito em Clipper passar primeiro o programa ao Harbour e logo ir incorporando as bibliotecas do HMG para deixá-lo em modo Windows criando o executável GUI? O novo executável é estável?
Que bom que encontrei vocês!
Bettu
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 9
Data de registro: 14 Nov 2013 15:25
Cidade/Estado: Curitiba
Curtiu: 0 vez
Mens.Curtidas: 0 vez

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor Mario Mesquita » 15 Nov 2013 09:16

Bom dia, amigos.

Também quero dar meu depoimento, rs.

Como o Raimundo, fiquei anos matutando como migrar para um ambiente "for Windows". Gostei muito do Delphi, mas aquele mecanismo de gerenciamento da base de dados do DataModule, sempre me foi estranho entre outras coisas como "pensar" em OOP.

Mas ao descobrir o HMG, meti a cara e acabou dando certo. Na verdade, eu tentei começar com o FIveWin, mas tb na época adquirir a lib, mais especificamente o não fornecimento de atualizações da lib me desanimaram.

Agora, estou a vontade na HMG, e descobrindo o fórum, consegui o apoio necessário para migrar do Clipper/DOS para HMG/Windows.

Não que eu esteja "fera", ainda mais vendo a turma aqui, com muita bagagem, eheheh...

Enfim, eu recomendo a HMG, dá pra pular do velho Clipper para um ambiente mais moderno sem muitos traumas.

Boa sorte a vocês que estão chegando.

Sds,
Mario.
Avatar de usuário

Mario Mesquita
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 557
Data de registro: 08 Dez 2009 12:47
Cidade/Estado: Rio de Janeiro
Curtiu: 73 vezes
Mens.Curtidas: 13 vezes

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor jairfab » 15 Nov 2013 09:24

Provavelmente voce está utilizando DO FUNCAO e Não FUNCAO() ISTO FAZ A FUNCAO FICAR DUPLICADA
Delpji 7, harbour 3.2, xharbour 1.2.3, Bcc7, Minigw, Minigui 19.11, hwgui 2.20, FiveWin 19.05 Gtwvw, Gtwvg, C# VS 2017
Avatar de usuário

jairfab
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 243
Data de registro: 21 Mai 2007 09:43
Cidade/Estado: São Paulo, Região Leste - Suzano
Curtiu: 0 vez
Mens.Curtidas: 13 vezes

duvidas sobre, minigui, harbour, xharbour hmg

Mensagempor Bettu » 15 Nov 2013 15:13

As funções que dão o erro no linker: multiple definition of 'BUSLOTE estão dentro de um while

do while .t.
    @15,61 get m_vola pict '@Z 999.99' when(w_agreg) valid fmerma(m_cereal,@m_rest,m_humed,m_vola,m_zara)
    @17,17 get m_lote when(w_agreg) valid buslote(m_lote) 
    @18,21 say m_has pict '@Z 99999.9'
    @18,19 get m_motivo when(w_agreg .and. m_lote="   ")
    @19,25 get m_contra when(w_agreg) valid busdat(m_contra,19,29,'f_nombre','avcontra') .or. m_contra='  '
    @19,63 get m_dist pict '@Z 999999999.99' when(w_agreg)
    @20,29 get m_obs when(w_agreg) valid Asigtime(m_obs)
    @20,65 get m_hora when(w_agreg)         && valid timevalid(alltrim(m_hora))
    read                                   
    opc1=0
    @ 22,0 to 24,79
    if lastkey()=27
         exit
    endi
    if w_agreg
       menulin("Confirma,Modifica,Fim",23,@opc1)
       do case
...


E estão definidas no mesmo prg como

Func buslote(w_lote)

if w_lote="   "
   @ 17,17 say spac(24)
   retu .t.
else
Bettu
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 9
Data de registro: 14 Nov 2013 15:25
Cidade/Estado: Curitiba
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Próximo



Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 9 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