Clipper On Line • Ver Tópico - se usar comandos FiveWin no Harbour

se usar comandos FiveWin no Harbour

Discussão sobre a biblioteca Fivewin - O Clipper para Windows.

Moderador: Moderadores

 

se usar comandos FiveWin no Harbour

Mensagempor Mário Isa » 20 Out 2005 21:42

não dá certo?

do tipo utilizar:
@ 1, 4 SAY "Serviço:" OF oDlg
@ 1, 10 COMBOBOX oCbxServ VAR oServEsc ITEMS aService of oDlg
@ 3, 4 SAY "Cep Origem:" OF oDlg
@ 3, 10 GET cCepOrigem picture "99999-999" OF oDlg

posos utilizar assim? Feito na mão? Ou tenho que utilizar-me de recursos?
Obrigado.
Mário
Avatar de usuário

Mário Isa
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 902
Data de registro: 07 Jul 2004 13:54
Cidade/Estado: Ilha Solteira-sp
Curtiu: 5 vezes
Mens.Curtidas: 8 vezes

Mensagempor culik » 20 Out 2005 23:44

Mario

seus comandos sao totalmente validos no FWH

[]s
Luiz
culik
 

Mensagempor rochinha » 25 Out 2005 19:56

Amiguinho

Voce se dara melhor usando resources pois o posicionamento ficará mais bonito.

Voce poderá usar para fazer .RC, o Pelles C, Workshop ou o IDE do Visual C++.

Quando voce define um diálogo em .RC, voce coloca os controles EditBox, ListBox e ComboBox e define um numero de controle, ID.

Dentro de seu programa .PRG basta definir os comandos direcionando para o ID do controle e pronto.

Veja no codigo .RC abaixo que cada controle tem um numero de ID( irrepetivel(boa esta) ) para que o mesmo seja encontrado.

Para visualizar este .RC use o Wordshop:

#include <commctrl.h>
#include "WinApi.ch"
#include "Combos.ch"

Combos DIALOG 22, 74, 174, 97
STYLE DS_MODALFRAME | 0x4L | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Testing all ComboBoxes styles"
FONT 8, "Arial"
{
COMBOBOX ID_SIMPLE, 7, 6, 49, 56, CBS_SIMPLE | CBS_DISABLENOSCROLL | WS_CHILD | WS_VISIBLE | WS_TABSTOP
COMBOBOX ID_DROPDOWN, 62, 6, 49, 52, CBS_DROPDOWN | WS_CHILD | WS_VISIBLE | WS_TABSTOP
COMBOBOX ID_DROPDOWNLIST, 117, 6, 49, 52, CBS_DROPDOWNLIST | WS_CHILD | WS_VISIBLE | WS_TABSTOP
LTEXT "&Selection:", -1, 11, 80, 32, 8
LTEXT "_______________________", ID_SELECTION, 47, 80, 72, 8, WS_CHILD | WS_VISIBLE | WS_GROUP
PUSHBUTTON "&Done", IDOK, 137, 76, 31, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
RADIOBUTTON "Radio", IDC_RADIOBUTTON1, 63, 24, 60, 12, BS_AUTORADIOBUTTON
CHECKBOX "Checkbox", IDC_CHECKBOX2, 63, 37, 60, 12, BS_AUTOCHECKBOX | WS_TABSTOP
}


No codigo abaixo as DEFINEs dão um numero para cada variavel que ira identificar o controle, mas é lógico que ficará melhor se voce colocar o ID direto no comando DEFINE ...controle.

#include "FiveWin.ch"
//----------------------------------------------------------------------------//
#define ID_SIMPLE                   110
#define ID_DROPDOWN   120
#define ID_DROPDOWNLIST   130
#define ID_SELECTION   140
#define IDC_RADIOBUTTON1   111
#define IDC_CHECKBOX2   113
//----------------------------------------------------------------------------//
function Main()
   local oDlg, oSay
   local oCbx1, oCbx2, oCbx3
   local cItem1, cItem2 := "One", cItem3, cItem4 := "None"

   SET _3DLOOK ON

   DEFINE DIALOG oDlg RESOURCE "Combos"

   REDEFINE COMBOBOX oCbx1 VAR cItem1 ITEMS { "One", "Two", "Three" } ;
      ID ID_SIMPLE OF oDlg ;
      ON CHANGE ( cItem4 := cItem1, oSay:Refresh() ) ;
      VALID (oCbx2:SetFocus(), cItem4 := cItem1, oSay:Refresh() )

   REDEFINE COMBOBOX oCbx2 VAR cItem2 ITEMS { "One", "Two", "Three" } ;
      ID ID_DROPDOWN OF oDlg ;
      STYLE CBS_DROPDOWN ;
      ON CHANGE ( cItem4 := cItem2, oSay:Refresh() ) ;
      VALID ( If( ! oCbx2:Find( oCbx2:oGet:GetText() ),;
                  oCbx2:Add( oCbx2:oGet:GetText() ),), .t. )

   REDEFINE COMBOBOX oCbx3 VAR cItem3 ITEMS { "One", "Two", "Three" } ;
      ID ID_DROPDOWNLIST OF oDlg ;
      ON CHANGE ( cItem4 := cItem3, oSay:Refresh() ) ;
      VALID ( cItem4 := cItem3, oSay:Refresh(), .t. )

   REDEFINE SAY oSay PROMPT cItem4 ID ID_SELECTION OF oDlg COLOR "R+/W"

   ACTIVATE DIALOG oDlg CENTERED

return nil


para ligar um .RC em um executavel basta usar o comando:

RC -k NomeDoExecutável

Ou seja, voce Clippa os .PRGs, BLinka-os e usa o comando acima.

Basta dar uma olhada no arquivo BUILD.BAT para ver o seu funcionamento e vera que existe uma linha que verifica se existe um .RC ligado ao programa sendo compilado.

...
IF EXIST %1.RC RC -k %1
...

@braços :?)
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Re: se usar comandos FiveWin no Harbour

Mensagempor Vagner » 03 Mar 2006 17:48

Mário Isa escreveu:não dá certo?

do tipo utilizar:
@ 1, 4 SAY "Serviço:" OF oDlg
@ 1, 10 COMBOBOX oCbxServ VAR oServEsc ITEMS aService of oDlg
@ 3, 4 SAY "Cep Origem:" OF oDlg
@ 3, 10 GET cCepOrigem picture "99999-999" OF oDlg

posos utilizar assim? Feito na mão? Ou tenho que utilizar-me de recursos?
Obrigado.
Mário

Olá Mário,
Sim vc pode usar perfeitamente assim :D, eu mesmo só escrevo com @, detesto usar recursos :D
Abraços
Vagner Wirts
São Paulo-Brasil
Avatar de usuário

Vagner
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 6
Data de registro: 07 Jul 2004 14:42
Curtiu: 0 vez
Mens.Curtidas: 0 vez




Retornar para FiveWin

Quem está online

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