Workshop ou PellesC é complicado? Veja se esta ferramenta.

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

Moderador: Moderadores

Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Workshop ou PellesC é complicado? Veja se esta ferramenta.

Mensagem por rochinha »

Amiguinhos,

A coisa que mais presamos em programação, geralmente é o apelo visual o qual buscamos criar as telas as mais simples possiveis.

Mas para quem está aprendendo ou transportando seus aplicativos e sistemas para Windows geralmente encontram barreiras ao tentar usar o WorkShop, PellsC ou Resource Editor.

Muitos usam o @..Say e se veêm tentando entender o funcionamento dos .RCs.

Pois ai está uma ferramenta que apereiçoa este aprendizado, podendo até ser usando em produção.

Ele gera código para Fivewin, mas também gera .RC que é "universal".

Bom trabalho.
Anexos
design.zip
(1.94 MiB) Baixado 112 vezes
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Workshop ou PellesC é complicado? Veja se esta ferramenta.

Mensagem por JoséQuintas »

Só apanhei um pouco pra entender que era necessário o clique da direita.... rs

Código fonte relativamente simples, e poderoso.
Parabéns, fantástico.
teste.png
Apenas comentário:
Uma coisa interessante da GTWVG é usar linha/coluna como referência.
Com base nisso, dá pra pensar em fazer nas LIBs gráficas do mesmo jeito.

Por exemplo, modifiquei um fonte que o Toledo postou tempos atrás, pra HMG Extended.

Original:

Código: Selecionar todos

   @ 030,005 label lbl_cep;
      of form_cep;
      value 'CEP';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 030,070 textbox tbox_cep;
      of form_cep;
      height 027;
      width 85;
      value cCep;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1;
      inputmask '99999-999';
      on enter {|| CepOk(StrTran(form_cep.tbox_cep.Value,"-",""))}
   @ 060,005 label lbl_endereco;
      of form_dados;
      value 'Endereço';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 060,070 textbox tbox_endereco;
      of form_cep;
      height 027;
      width 380;
      value cEndereco;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1
   @ 090,005 label lbl_bairro;
      of form_dados;
      value 'Bairro';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 090,070 textbox tbox_bairro;
      of form_cep;
      height 027;
      width 280;
      value cBairro;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1
   @ 0120,005 label lbl_cidade;
      of form_dados;
      value 'Cidade';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 0120,070 textbox tbox_cidade;
      of form_cep;
      height 027;
      width 250;
      value cCidade;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1
   @ 0160,005 label lbl_uf;
      of form_dados;
      value 'UF';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 0160,070 textbox tbox_uf;
      of form_cep;
      height 027;
      width 30;
      value cUf;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1
   define label linha_rodape
      col 000
      row form_cep.height-090
      value ''
      width form_cep.width
      height 001
      backcolor _preto_001
      transparent .F.
   end label
Modificado:

Código: Selecionar todos

      WSay( 1, 1, "lbl_cep", "CEP" )
      WGet( 1, 14, "tbox_cep", cCep, "99999-999", { || CepOk( StrTran( form_cep.tbox_cep.Value, "-", "" ) ) } )
      WSay( 2, 1, "lbl_endereco", "Endereço" )
      WGet( 2, 14, "tbox_endereco", cEndereco )
      WSay( 3, 1, "lbl_bairro", "Bairro" )
      WGet( 3, 14, "tbox_bairro", cBairro )
      WSay( 4, 1, "lbl_cidade", "Cidade" )
      WGet( 4, 14, "tbox_cidade", cCidade )
      WSay( 5, 1, "lbl_uf", "UF" )
      WGet( 5, 14, "tbox_uf", cUF )
...
FUNCTION WSay( nRow, nCol, cName, cValue )

   @ nRow * 30, nCol * 5 LABEL &cName OF form_dados value cValue Autosize font 'tahoma' size 010 bold fontcolor BLACK transparent

   RETURN NIL

FUNCTION WGet( nRow, nCol, cName, cValue, cPicture, bOnEnter )

   LOCAL nHeight := 27, nWidth := Len( cValue ) * 10

   IF cPicture == NIL
       @ nRow * 30, nCol * 5 TEXTBOX &cName HEIGHT nHeight WIDTH nWidth ;
      VALUE cValue ;
      font "tahoma" size 010 backcolor BLUE fontcolor WHITE
   ELSE
     @ nRow * 30, nCol * 5 TEXTBOX &cName HEIGHT nHeight WIDTH nWidth ;
      VALUE cValue ;
      font "tahoma" size 010 backcolor BLUE fontcolor WHITE ;
      INPUTMASK cPicture ON ENTER bOnEnter
   ENDIF

   RETURN NIL
toledo.png
Não deixa de ser uma alternativa.
Quem não tem cão, caça com gato, coelho, passarinho... o que a imaginação sugerir e que funcionar... rs
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/
Claudio Soto
Colaborador
Colaborador
Mensagens: 566
Registrado em: 27 Ago 2012 12:31
Localização: Uruguay
Contato:

Workshop ou PellesC é complicado? Veja se esta ferramenta.

Mensagem por Claudio Soto »

Sólo a modo de comentario, el uso de líneas y columnas en vez de pixel es interesante pero sólo tiene sentido cuando se utiliza una única fuente.

Nro col = ancho ventana / ancho promedio fuente

Nro lin = altura ventana / altura promedio fuente
Saludos.
Dr. Claudio Soto
(Uruguay)
http://srvet.blogspot.com
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Workshop ou PellesC é complicado? Veja se esta ferramenta.

Mensagem por rochinha »

Amiguinhos,

O interessante também é perceber que ao escolher a opção PRG Code aparece um editor de textos. Ele usa as duas .DLLs contidas no projeto.

Este editor é chamado de Scintilla e pode ser adicionado a qualquer projeto, dando margem a ter editor de texto dentro da aplicação, para manuear documentos pertinentes as informações administrativas.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Responder