Clipper On Line • Ver Tópico - Hwgui 2.20 Wathsnew

Hwgui 2.20 Wathsnew

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Hwgui 2.20 Wathsnew

Mensagempor Itamar M. Lins Jr. » 09 Set 2016 13:07

                      HWGUI - Harbour Win32 GUI library
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                       What's new in the last version
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[!] Important
[+] New
[-] Fixed error
[*] Changes

HWGUI 2.20 build 1 ( 09.09.2016 )
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[+] HBitmap():AddStandard( cId ) method added for GTK version. Now it is possible to use
    stock icons in GTK version as predefined bitmaps in WinAPI.
[+] :nRowHeight variable added to HBrowse to set row height.
[+] :aPaintCB variable and SetPaintCB( nId, block, cId ) method added to
    HPanel to support user defined codeblocks for painting.
[+] :aPaintCB variable and SetPaintCB( nId, block, cId ) method added to
    HColumn to support user defined codeblocks for painting browse items
    ( header, lines, footers )
[*] Color in Focus handling has been changed for HEdit.
[*] Double buffering implemented for HBrowse in Windows version, logical :lBuffering
    variable ( default value is .F. ) added to HBrowse to handle buffering.
[*] HBrowse cleaned, a part of a code, related to filtering, moved to
    a new HBrwFlt class, New command added for this class: @ ... BROWSE ... FILTER.
[*] Changed a list of parameters, passed to some codeblocks for unification.
[*] ON DRAW changed to ON PAINT for OWNERBUTTON and SHADEBUTTON
[-] ON PAINT clause deleted from EDITBOX and RICHEDIT commands.
[-] hwg_ParentGetDialog() removed, hwg_getParentForm() should be used instead.
[+] :oStyleHead variable added to HBrowse and HColumn classes: It is possible
    now to have styled browse headers.
[+] :Draw( hDC, nWidth, nHeight ) method added to HStyle to draw styled control.
[+] New class added HPanelSts, inherited from HPanel to implement STATUS PANEL.
[+] Two commands added: ADD TOP PANEL, ADD STATUS PANEL.
[+] BACKCOLOR added as preferrable alternative for COLOR clause in INIT WINDOW,
    INIT DIALOG commands.
[*] Tutorial extended with new chapters and modules.
[!] Many bug fixes and improvements


Depois coloco as telas...

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Hwgui 2.20 Wathsnew

Mensagempor Fernando queiroz » 27 Jan 2017 22:52

Ola Itamar

estou usando a HWGUI 2.20 com harbour 3.2 e nao estou conseguindo dar refresh no browse apos deletar um registro
ele simplesmente nao faz nada.

voce teria um exemplo :
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes

Hwgui 2.20 Wathsnew

Mensagempor Itamar M. Lins Jr. » 31 Jan 2017 13:25

Ola!
Cadê o código ?

oBrw:refresh()
ou
oBrw:refreshline()

nRec:=Recno()
oBrw:Top()
oBrw:Bottom()
dbgoto(nRec)
oBrw:refresh()

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Hwgui 2.20 Wathsnew

Mensagempor Fernando queiroz » 03 Fev 2017 22:51

#include "SGC.CH"
#include "hwgui.ch"
#include "windows.ch"   
****************************************
FUNCTION TESTE2
****************************************
  Local  vPesquisa := ""
  private oDlg,  oOwnerbutton1, oOwnerbutton2, oOwnerbutton3, oGroup1, oPesquisa, oLabel1, oBrowse1

   IF ! ABRE_CLIENTES()
      DBCLOSEALL()
      hb_gtSelect(pGT)
      pGTfornec:= NIL
      RETURN NIL
   END
   SELE CLIENTES
   SET ORDER TO 2
   SET DELETED ON

  INIT DIALOG oDlg TITLE "SGC - CADASTRO DE CLIENTES"    AT 0, 0 SIZE 832,614 NOEXIT  ;
     STYLE WS_POPUP+WS_CAPTION+WS_SYSMENU+WS_SIZEBOX+DS_CENTER
    Thisform := oDlg

   @ 555,576 OWNERBUTTON oOwnerbutton1  SIZE 86,28   ;
        TEXT 'Inclui'  ;
        COORDINATES 0, 0, 0, 0  ;
        BITMAP '..\icones\16x16-free-application-icons\bmp\16x16\create.bmp' ;
        COORDINATES 1, 0, 0, 0  ;
        ON CLICK {|| MANUTENCAO_CLIENTES(  ) }
   @ 647,576 OWNERBUTTON oOwnerbutton2  SIZE 86,28     ;
        TEXT 'Altera'  ;
        COORDINATES 0, 0, 0, 0  ;
        BITMAP '..\icones\16x16-free-application-icons\bmp\16x16\modify.bmp' ;
        COORDINATES 1, 0, 0, 0
   @ 740,576 OWNERBUTTON oOwnerbutton3  SIZE 86,28     ;
        TEXT 'Exclui'  ;
        COORDINATES 0, 0, 0, 0  ;
        BITMAP '..\icones\16x16-free-application-icons\bmp\16x16\delete.bmp' ;
        COORDINATES 1, 0, 0, 0  ;
        ON CLICK {|| ADD_EXCLUIR(oBrowse1:nCurrent) }
      
   @ 90,26 GET oPesquisa VAR vPesquisa Picture "@!" SIZE 415,24 MAXLENGTH 40 ;
      ON CHANGE {|| PesqBrowseFilterPrd( vPesquisa, oBrowse1 ), .t. }
    
   @ 16,61 BROWSE oBrowse1 DATABASE SIZE 795,485 ;
        STYLE  WS_VSCROLL + WS_HSCROLL ;
        FONT HFont():Add( '',0,-16,400,,,)
      
    // CREATE oBrowse1   //  SCRIPT GENARATE BY DESIGNER
*    oBrowse1:nHeadHeight := 30
*    oBrowse1:oHeadFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:alias := 'clientes'
    oBrowse1:nColumns := 50
    SELECT (oBrowse1:alias)
    oBrowse1:AddColumn( HColumn():New("Ucliente", FieldBlock( 'ucliente' ) ,'C',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[1]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Tipcli", FieldBlock( 'tipcli' ) ,'C',1, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[2]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Nraz_soc", FieldBlock( 'nraz_soc' ) ,'C',60, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[3]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Nraz_fant", FieldBlock( 'nraz_fant' ) ,'C',60, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[4]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Tipdoc", FieldBlock( 'tipdoc' ) ,'C',1, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[5]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Cpfcgc", FieldBlock( 'cpfcgc' ) ,'C',18, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[6]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Insest", FieldBlock( 'insest' ) ,'C',18, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[7]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Isento", FieldBlock( 'isento' ) ,'C',1, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[8]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Insmun", FieldBlock( 'insmun' ) ,'C',18, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[9]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Suframa", FieldBlock( 'suframa' ) ,'C',18, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[10]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Email", FieldBlock( 'email' ) ,'C',60, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[11]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Ender", FieldBlock( 'ender' ) ,'C',60, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[12]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Numero", FieldBlock( 'numero' ) ,'N',9, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[13]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Complem", FieldBlock( 'complem' ) ,'C',60, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[14]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Bair", FieldBlock( 'bair' ) ,'C',50, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[15]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Cep", FieldBlock( 'cep' ) ,'C',9, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[16]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Codpais", FieldBlock( 'codpais' ) ,'C',4, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[17]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Pais", FieldBlock( 'pais' ) ,'C',50, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[18]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Uf", FieldBlock( 'uf' ) ,'C',2, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[19]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Codmun", FieldBlock( 'codmun' ) ,'C',7, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[20]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Cidade", FieldBlock( 'cidade' ) ,'C',50, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[21]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Fone", FieldBlock( 'fone' ) ,'C',14, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[22]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Contato", FieldBlock( 'contato' ) ,'C',50, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[23]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Venblo", FieldBlock( 'venblo' ) ,'C',1, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[24]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Datcad", FieldBlock( 'datcad' ) ,'D',10, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[25]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Datalt", FieldBlock( 'datalt' ) ,'D',10, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[26]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Usualt", FieldBlock( 'usualt' ) ,'C',20, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[27]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Ex_clie", FieldBlock( 'ex_clie' ) ,'L',1, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[28]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Limcre", FieldBlock( 'limcre' ) ,'N',14, 2 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[29]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Totcre", FieldBlock( 'totcre' ) ,'N',14, 2 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[30]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Valor", FieldBlock( 'valor' ) ,'N',14, 2 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[31]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Ultven", FieldBlock( 'ultven' ) ,'D',10, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[32]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Ultpag", FieldBlock( 'ultpag' ) ,'D',10, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[33]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Maldir", FieldBlock( 'maldir' ) ,'L',1, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[34]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Datfec", FieldBlock( 'datfec' ) ,'N',2, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[35]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Datrec", FieldBlock( 'datrec' ) ,'N',2, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[36]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Codrot", FieldBlock( 'codrot' ) ,'N',2, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[37]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Icms", FieldBlock( 'icms' ) ,'N',2, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[38]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Taxcli", FieldBlock( 'taxcli' ) ,'N',5, 2 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[39]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Numpar", FieldBlock( 'numpar' ) ,'N',2, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[40]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Perdes", FieldBlock( 'perdes' ) ,'N',5, 2 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[41]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("Valmin", FieldBlock( 'valmin' ) ,'N',5, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[42]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("", FieldBlock( '' ) ,'U',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[43]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("", FieldBlock( '' ) ,'U',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[44]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("", FieldBlock( '' ) ,'U',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[45]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("", FieldBlock( '' ) ,'U',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[46]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("", FieldBlock( '' ) ,'U',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[47]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("", FieldBlock( '' ) ,'U',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[48]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("", FieldBlock( '' ) ,'U',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[49]:oFont := HFont():Add( '',0,-16,700,,,)
    oBrowse1:AddColumn( HColumn():New("", FieldBlock( '' ) ,'U',6, 0 ,.F.,0,,,,,,,,,,,))
    oBrowse1:aColumns[50]:oFont := HFont():Add( '',0,-16,700,,,)

    // END BROWSE SCRIPT  -  oBrowse1

   @ 18,30 SAY oLabel1 CAPTION "Pesquisa:"  SIZE 67,21 

   @ 11,6 GROUPBOX oGroup1 CAPTION "Clientes"  SIZE 812,554 ;
        STYLE BS_LEFT 

   ACTIVATE DIALOG oDlg

dbcloseall()
RETURN oDlg:lresult

*********************************
Static Function ADD_EXCLUIR(vADD)
*********************************

   BEEP();IF PERG( "Confirma Exclusao ?" ) = "N"
       Return
   END
   IF .NOT. RLOCK()
       BEEP(); MENSAGEM( "Registro em uso por outro usuário", 3 )
       Return
   END
   DBDELETE()
   Dbunlockall()
*   oBrowse1:Top()
*   oBrowse1:Bottom()
   oBrowse1:Refresh(.T.)
*   oPesquisa:SetFocus()
*   SetFocus(oPesquisa)
   Return .t.

***************************************************
Static Function PesqBrowseFilterPrd( var, browseee)
***************************************************
Local nreg :=recno()

DBSEEK(var,.T.)

if nreg != recno()
  Browseee:Refresh(.f.)
endif

   
FUNCTION MANUTENCAO_CLIENTES(  )

LOCAL oDlg,  oLabel1, oLabel2, oLabel3, oLabel4, oLabel5, oLabel6, oLabel7 ;
        , oLabel8, oLabel9, oLabel10, oLabel11, oLabel12, oLabel13, oLabel14, oLabel15 ;
        , oLabel16, oLabel17, oEdit1, oEdit2, oGroup1, oLabel18, oLabel19, oLabel20 ;
        , oLabel21, oCombo1, oEdit3, oEdit4, oEdit5, oEdit6, oLabel22, oEdit7 ;
        , oEdit8, oEdit9, oRadiobutton1, oEdit10, oEdit11, oStatus1, oEdit12, oEdit13 ;
        , oEdit14, oEdit15, oEdit16, oEdit17, oEdit18, oEdit19, oEdit20, oEdit21 ;
        , oEdit22, oLabel23, oOwnerbutton1, oOwnerbutton2

Local  nEdit1 := 0 , cEdit2 := "" , nCombo1 := 1 , cEdit3 := "" , nEdit4 := 0 , dEdit5 := DATE() ;
         , dEdit6 := DATE() , cEdit7 := "" , nEdit8 := 0 , nEdit9 := 0 , cEdit10 := "" , cEdit11 := "" , cEdit12 := "" ;
         , cEdit13 := "" , nEdit14 := 0 , cEdit15 := "" , cEdit16 := "" , cEdit17 := "" , cEdit18 := "" , cEdit19 := "" ;
         , cEdit20 := "" , cEdit21 := "" , nEdit22 := 0

  INIT DIALOG oDlg TITLE "SGC - CADASTRO DE CLIENTES"    AT 0, 0 SIZE 830,653 NOEXIT  ;
     STYLE WS_POPUP+WS_CAPTION+WS_SYSMENU+WS_SIZEBOX+DS_CENTER
    Thisform := oDlg

   ADD STATUS oStatus1 TO oDlg
   @ 15,44 SAY oLabel1 CAPTION "CNPJ/CPF:"  SIZE 71,18 
   @ 15,75 SAY oLabel2 CAPTION "Nome/Razao Social:"  SIZE 134,18 
   @ 15,106 SAY oLabel3 CAPTION "Nome de Fantasia:"  SIZE 124,18 
   @ 15,137 SAY oLabel4 CAPTION "Inscricao Estadual:"  SIZE 126,18 
   @ 15,168 SAY oLabel5 CAPTION "Inscricao Municipal:"  SIZE 132,18 
   @ 351,168 SAY oLabel6 CAPTION "Inscricao Suframa:"  SIZE 123,18 
   @ 15,199 SAY oLabel7 CAPTION "E-Mail:"  SIZE 47,18 
   @ 15,270 SAY oLabel8 CAPTION "CEP:"  SIZE 33,18 
   @ 15,301 SAY oLabel9 CAPTION "Logradouro:"  SIZE 80,18 
   @ 15,332 SAY oLabel10 CAPTION "Numero:"  SIZE 57,18 
   @ 15,363 SAY oLabel11 CAPTION "Complemento:"  SIZE 95,18 
   @ 15,394 SAY oLabel12 CAPTION "Bairro:"  SIZE 46,18 
   @ 15,425 SAY oLabel13 CAPTION "Pais:"  SIZE 35,18 
   @ 15,456 SAY oLabel14 CAPTION "UF:"  SIZE 24,18 
   @ 15,487 SAY oLabel15 CAPTION "Municipio:"  SIZE 69,18 
   @ 15,518 SAY oLabel16 CAPTION "Telefone:"  SIZE 62,18 
   @ 15,549 SAY oLabel17 CAPTION "Contato:"  SIZE 55,18 
   @ 156,102 GET oEdit7 VAR cEdit7 SIZE 647,24  MAXLENGTH 60 
   @ 156,133 GET oEdit8 VAR nEdit8 SIZE 166,24  MAXLENGTH 16 
   @ 156,40 GET oEdit1 VAR nEdit1 SIZE 182,24  MAXLENGTH 15 
   @ 156,164 GET oEdit9 VAR nEdit9 SIZE 166,24  MAXLENGTH 15 
   @ 156,71 GET oEdit2 VAR cEdit2 SIZE 647,24  MAXLENGTH 60 
   @ 351,133 RADIOBUTTON oRadiobutton1 CAPTION "Isento do ICMS"  SIZE 135,22 
   @ 591,363 SAY oLabel18 CAPTION "Limite Credito:"  SIZE 96,18 
   @ 624,393 SAY oLabel19 CAPTION "Utilizado:"  SIZE 64,18 
   @ 589,466 SAY oLabel20 CAPTION "Data Cadastro:"  SIZE 98,18 
   @ 568,497 SAY oLabel21 CAPTION "Data Manutencao:"  SIZE 120,18 
   @ 652,299 GET COMBOBOX oCombo1 VAR nCombo1 ;
        ITEMS {"Liberado","Bloqueado"}  ;
        SIZE 155,24 
   @ 698,356 GET oEdit3 VAR cEdit3 SIZE 107,24  MAXLENGTH 14 
   @ 698,387 GET oEdit4 VAR nEdit4 SIZE 107,24  MAXLENGTH 14 
   @ 698,462 GET oEdit5 VAR dEdit5 SIZE 107,24  PICTURE '@D' 
   @ 698,493 GET oEdit6 VAR dEdit6 SIZE 107,24  PICTURE '@D' 
   @ 561,303 SAY oLabel22 CAPTION "Faturamento:"  SIZE 87,21 

   @ 549,264 GROUPBOX oGroup1 CAPTION "Situacao:"  SIZE 268,310 ;
        STYLE BS_LEFT 
   @ 485,164 GET oEdit10 VAR cEdit10 SIZE 166,24  MAXLENGTH 15 
   @ 156,195 GET oEdit11 VAR cEdit11 SIZE 647,24  MAXLENGTH 60 
   @ 122,266 GET oEdit12 VAR cEdit12 SIZE 92,24  MAXLENGTH 60 
   @ 122,297 GET oEdit13 VAR cEdit13 SIZE 410,24  MAXLENGTH 60 
   @ 122,328 GET oEdit14 VAR nEdit14 SIZE 92,24  MAXLENGTH 10 
   @ 122,359 GET oEdit15 VAR cEdit15 SIZE 410,24  MAXLENGTH 60 
   @ 122,390 GET oEdit16 VAR cEdit16 SIZE 410,24  MAXLENGTH 60 
   @ 122,421 GET oEdit17 VAR cEdit17 SIZE 410,24  MAXLENGTH 30 
   @ 122,452 GET oEdit18 VAR cEdit18 SIZE 66,24  MAXLENGTH 2 
   @ 122,483 GET oEdit19 VAR cEdit19 SIZE 410,24  MAXLENGTH 50 
   @ 122,514 GET oEdit20 VAR cEdit20 SIZE 149,24  MAXLENGTH 10 
   @ 122,545 GET oEdit21 VAR cEdit21 SIZE 410,24  MAXLENGTH 60 
   @ 156,9 GET oEdit22 VAR nEdit22 SIZE 80,24  MAXLENGTH 6 
   @ 15,13 SAY oLabel23 CAPTION "Codigo:"  SIZE 51,21 
   @ 611,588 OWNERBUTTON oOwnerbutton1  SIZE 99,28   ;
        TEXT 'Cancela'  ;
        COORDINATES 0, 0, 0, 0  ;
        BITMAP '..\icones\16x16-free-application-icons\bmp\16x16\abort.bmp' ;
        COORDINATES 1, 0, 0, 0
   @ 718,588 OWNERBUTTON oOwnerbutton2  SIZE 99,28   ;
        TEXT 'Confirma'  ;
        COORDINATES 0, 0, 0, 0  ;
        BITMAP '..\icones\16x16-free-application-icons\bmp\16x16\apply.bmp' ;
        COORDINATES 1, 0, 0, 0

   ACTIVATE DIALOG oDlg

RETURN oDlg:lresult
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes

Hwgui 2.20 Wathsnew

Mensagempor Fernando queiroz » 03 Fev 2017 22:55

A ideia é montar uma tela de Browse para fazer a pesquisa, inclusão , alteração e exclusão via botoes
mas todos os posts que vi no fórum não ajudaram muito as que pareciam mais com o que tenho em harbour davam erros

segue o que tenho em harbour funcionando perfeito

FUNCTION SGC1100_PESQ80
**************************************
TELA_CAD := SAVESCREEN( LIN_MENU + 1, 00, 23, 79 )
SET ORDER TO 2
DBGOTOP()
COR( "MENU" )

JANELA( 00, 00, 23, 99, "Consulta Produtos" )

L_CON := L_SOM; C_CON := C_SOM
COR( "MENU" )
@ 02, 03 CLEAR TO 20, 96
@ 02, 03 SAY SUBS( TB_JANELA, 1, 1 ) +;
             REPL( SUBS( TB_JANELA, 2, 1 ), 92 ) + SUBS( TB_JANELA, 3, 1 )
@ 03, 03 SAY SUBS( TB_JANELA, 12, 1 )
@ 03, 96 SAY SUBS( TB_JANELA, 4, 1 )
@ 04, 03 SAY SUBS( TB_JANELA, 11, 1 )
@ 04, 96 SAY SUBS( TB_JANELA, 5, 1 )
FOR CONTAR = 5 TO 20
   @ CONTAR, 03 SAY SUBS( TB_JANELA, 10, 1 )
   @ CONTAR, 96 SAY SUBS( TB_JANELA, 6, 1 )
NEXT
@ 21, 03 SAY SUBS( TB_JANELA, 9, 1 ) +;
             REPL( SUBS( TB_JANELA, 8, 1 ), 92 ) + SUBS( TB_JANELA, 7, 1 )

OBJETO := TBROWSEDB( 03, 04, 19, 95 )
OBJETO:HEADSEP := TB_SEP_CAB
OBJETO:COLSEP := TB_SEP_LIN
OBJETO:FOOTSEP := TB_RODAPE
OBJETO:COLORSPEC := CONTECOR[ 2 ] + "," + CONTECOR[ 3 ] + "," + TB_COR_DEL

OB_COLUN := TBCOLUMNNEW( "Codigo", { || PRODUTOS->CODPRO } )
OB_COLUN:PICTURE := "@R 999999-9"
OBJETO:ADDCOLUMN(OB_COLUN)

OB_COLUN := TBCOLUMNNEW( "Nome Produto", { || PRODUTOS->DESPRO } )
OB_COLUN:PICTURE := "@S38"
OBJETO:ADDCOLUMN(OB_COLUN)

OB_COLUN := TBCOLUMNNEW( "Preco Venda", { || PRODUTOS->PREVEN } )
OB_COLUN:PICTURE := "@E 999,999.99"
OBJETO:ADDCOLUMN(OB_COLUN)

IF strzero(M->NIV_ACESSO,1,0)$"3"
   OB_COLUN := TBCOLUMNNEW( "Est.Deposito", { || PRODUTOS->ESTL02 } )
   OB_COLUN:PICTURE := "9999999.99"
   OBJETO:ADDCOLUMN(OB_COLUN)
ELSEIF strzero(M->NIV_ACESSO,1,0)$"589"
   OB_COLUN := TBCOLUMNNEW( "Obs::", { || PRODUTOS->CODREF } )
   OB_COLUN:PICTURE := "@S22"
   OBJETO:ADDCOLUMN(OB_COLUN)
   OB_COLUN := TBCOLUMNNEW( "Estoque", { || IF(PRODUTOS->PROSER = "1",PRODUTOS->ESTATU,PRODUTOS->ESTATU*(-1)) } )
   OB_COLUN:PICTURE := "9999999.99"
   OBJETO:ADDCOLUMN(OB_COLUN)
   OB_COLUN := TBCOLUMNNEW( "Est.Dep.", { || PRODUTOS->ESTL02 } )
   OB_COLUN:PICTURE := "9999999.99"
   OBJETO:ADDCOLUMN(OB_COLUN)   
   OB_COLUN := TBCOLUMNNEW( "Vendas Mes", { || PRODUTOS->SMES01 } )
   OB_COLUN:PICTURE := "9999999.99"
   OBJETO:ADDCOLUMN(OB_COLUN)
   OB_COLUN := TBCOLUMNNEW( "Preco Custo", { || PRODUTOS->PRECUS } )
   OB_COLUN:PICTURE := "@E 999,999.99"
   OBJETO:ADDCOLUMN(OB_COLUN)
ELSE
   OB_COLUN := TBCOLUMNNEW( "Estoque", { || IF(PRODUTOS->PROSER = "1",PRODUTOS->ESTATU,PRODUTOS->ESTATU*(-1)) } )
   OB_COLUN:PICTURE := "9999999.99"
   OBJETO:ADDCOLUMN(OB_COLUN)
   OB_COLUN := TBCOLUMNNEW( "Obs::", { || PRODUTOS->CODREF } )
   OB_COLUN:PICTURE := "@S22"
   OBJETO:ADDCOLUMN(OB_COLUN)
ENDIF
OB_COLUN := TBCOLUMNNEW( "Unidade", { || PRODUTOS->TIPUNI } )
OBJETO:ADDCOLUMN(OB_COLUN)

OB_COLUN := TBCOLUMNNEW( "COD.BARRAS", { || PRODUTOS->EAN13 } )
OBJETO:ADDCOLUMN(OB_COLUN)

OB_COLUN := TBCOLUMNNEW( "NCM", { || PRODUTOS->NCM } )
OBJETO:ADDCOLUMN(OB_COLUN)

OB_COLUN := TBCOLUMNNEW( "Tipo", { || IF(PRODUTOS->PROSER = "1","PRODUTO","SERVICO") } )
OBJETO:ADDCOLUMN(OB_COLUN)

OB_COLUN := TBCOLUMNNEW( "CFOP/REG/ST/ORIG/PIS/COFINS", { || PRODUTOS->ICMS_CFOP+"/"+PRODUTOS->icms_regim+"/"+PRODUTOS->ICMS_ST+"/"+PRODUTOS->ICMS_ORIGE+"/"+PRODUTOS->q_PISst+"/"+PRODUTOS->s_COFst } )
OBJETO:ADDCOLUMN(OB_COLUN)

IF strzero(M->NIV_ACESSO,1,0)$"89"
   OB_COLUN := TBCOLUMNNEW( "Data Inc/Alt", { || PRODUTOS->DATALT } )
   OB_COLUN:PICTURE := "99-99-9999"
   OBJETO:ADDCOLUMN(OB_COLUN)
   OB_COLUN := TBCOLUMNNEW( "Operador", { || PRODUTOS->USUALT } )
   OB_COLUN:PICTURE := "@S20"
   OBJETO:ADDCOLUMN(OB_COLUN)
END

COR( "MENU" )

OBJETO:freeze := 2
OBJETO:RIGHT()
pestecla:=""
@ 20,07 SAY "Pesquisa:"
SETCOLOR( CONTECOR[ 3 ] )
@  20, 16 SAY SPACE(40)
WHILE .T.
****OBJETO:colorrect({OBJETO:rowpos,1,OBJETO:rowpos,OBJETO:colCount},{Iif(OrdKeyNo()%2==0,1,3), 1})
   WHILE ( !OBJETO:STABILIZE() )
      IF ( TECLA := INKEY() ) != 0
         EXIT
      ENDIF
   ENDDO
****OBJETO:colorrect({OBJETO:rowpos,1,OBJETO:rowpos,OBJETO:colCount},{2,2})
   IF OBJETO:STABLE
      SETCOLOR( CONTECOR[ 5 ] )
      @ 23, 04 SAY STRZERO( RECN(), 7 ) + "   " + IIF( DELETED(), "Del", "   " )
      CURSOR( LIGA )
      SETCOLOR( CONTECOR[ 3 ] )
      @  20,16+LEN(PESTECLA) SAY ""
      TECLA := INKEY( 0 )
      CURSOR( DESLIGA )     
      if tecla>=32 .and. tecla<=165
         PESTECLA+=UPPER(chr(TECLA))
         @  20, 16 SAY PESTECLA
      end

      SETCOLOR( CONTECOR[ 5 ] )
   ENDIF
   IF TECLA == T_CIMA
      OBJETO:UP()
   ELSEIF TECLA == T_BAIXO
      OBJETO:DOWN()
   ELSEIF TECLA == T_ESQUERDA
       OBJETO:LEFT()
       IF OBJETO:colPos = 1
          SET ORDER TO 1
          OB_COLUN := OBJETO:getColumn( OBJETO:colPos )
          OBJETO:configure()
          OBJETO:refreshAll()
       ELSEIF OBJETO:colPos = 2
          SET ORDER TO 2
          OB_COLUN := OBJETO:getColumn( OBJETO:colPos )
          OBJETO:configure()
          OBJETO:refreshAll()
       ELSEIF OBJETO:colPos = 4
          SET ORDER TO 9
          OB_COLUN := OBJETO:getColumn( OBJETO:colPos )
          OBJETO:configure()
          OBJETO:refreshAll()
       END
   ELSEIF TECLA == T_DIREITA
      OBJETO:RIGHT()
       IF OBJETO:colPos = 1
          SET ORDER TO 1
          OB_COLUN := OBJETO:getColumn( OBJETO:colPos )
          OBJETO:configure()
          OBJETO:refreshAll()
       ELSEIF OBJETO:colPos = 2
          SET ORDER TO 2
          OB_COLUN := OBJETO:getColumn( OBJETO:colPos )
          OBJETO:configure()
          OBJETO:refreshAll()
       ELSEIF OBJETO:colPos = 4
          SET ORDER TO 9
          OB_COLUN := OBJETO:getColumn( OBJETO:colPos )
          OBJETO:configure()
          OBJETO:refreshAll()
       END
   ELSEIF TECLA == T_DEL
      IF M->NIV_ACESSO = 9

*         IF PERG( "Apaga o Produto do Cadastro?", "N" ) = "S"
            DO WHILE ! RLOCK()
               INKEY(.1)
            ENDD
            DBDELETE()
         OBJETO:PAGEDOWN()
         OBJETO:REFRESHALL()
         OBJETO:PAGEUP()
         OBJETO:REFRESHALL()
*         ENDIF
         MENSAGEM( "                            " )
      ENDIF

   ELSEIF TECLA == T_F9
      OBJETO:REFRESHALL()
   ELSEIF TECLA == T_HOME
      OBJETO:GOTOP()
      OBJETO:REFRESHALL()
   ELSEIF TECLA == T_END
      OBJETO:GOBOTTOM()
      OBJETO:REFRESHALL()
   ELSEIF TECLA == T_PGUP
      OBJETO:PAGEUP()
   ELSEIF TECLA == T_PGDN
      OBJETO:PAGEDOWN()
   ELSEIF TECLA == T_CTRL_PGUP
      OBJETO:GOTOP()
   ELSEIF TECLA == T_CTRL_PGDN
      OBJETO:GOBOTTOM()
   ELSEIF TECLA == T_CTRL_HOME
      OBJETO:PANHOME()
   ELSEIF TECLA == T_CTRL_END
      OBJETO:PANEND()
   ELSEIF TECLA == T_CTRL_ESQUERDA
      OBJETO:PANLEFT()
   ELSEIF TECLA == T_CTRL_DIREITA
      OBJETO:PANRIGHT()
   ELSEIF TECLA == T_ESC
      RESTSCREEN( LIN_MENU + 1, 00, 23, 79, TELA_CAD )
      RETURN NIL
   ELSEIF TECLA = T_ENTER
      RESTSCREEN( LIN_MENU + 1, 00, 23, 79, TELA_CAD )
      SET KEY -8 TO
      SET ORDER TO 1
      M->CODPRO:=VAL(SUBSTR(CODPRO,1,6))
      COR( "GETS" )
      RETURN NIL
   ELSEIF TECLA = T_BACKSPACE
         SETCOLOR( CONTECOR[ 3 ] )
         @  20, 16 SAY SPACE(40)
         PESTECLA:=SUBSTR(PESTECLA,1,LEN(PESTECLA)-1)
         DBSEEK(PESTECLA,.T.)
         OBJETO:REFRESHALL()
         @  20, 16 SAY PESTECLA
         SETCOLOR( CONTECOR[ 5 ] )
   ELSE
      OBJETO:GOTOP()
      DBSEEK(PESTECLA,.T.)
      OBJETO:REFRESHALL()
   ENDIF
ENDDO
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes

Hwgui 2.20 Wathsnew

Mensagempor Itamar M. Lins Jr. » 09 Fev 2017 09:40

Ola!
Faça exemplos pequenos que demonstre o problema, sem imagens, só o que interessa.
Assim fica difícil ajudar.
Um exemplo:

#include "hwgui.ch"
#include "rddleto.ch"
REQUEST LETO

Procedure main
LOCAL aDbS:={}, oDlg, oBrw

AADD(aDbS, {"a","c",4,0})

leto_Connect( '//localhost:2812/' )

DBCREATE("_test.dbf",aDbS)
DbUseArea(.T.,"LETO",'//localhost:2812/_test',,.T.,.F.,'PTISO')
/* leto_SetSkipBuffer(1)  */

INIT DIALOG oDlg CLIPPER NOEXIT AT 100,100 SIZE 300,200

   @ 10,10 Browse oBrw DATABASE of oDlg SIZE 200,150 APPEND

 
   Add column FieldBlock("a") to oBrw EDITABLE Header 'A' length 4
   
oDlg:Activate()

close all


Veja que não precisa de nada para testar esse código ai em cima, somente das ferramentas em questão.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes




Retornar para HwGui

Quem está online

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