Jump to content
Fivewin Brasil

Ajuda com barra de botões


ram_bh

Recommended Posts

Bom dia!

Quero criar uma barra de botões, inicialmente usando a ButtonBar, mas com alguns botões alinhados à direita e outros à esquerda da Dialog / Window.

É possível isso através de uma ButtonBar ou preciso criar os botões na própria Dialog / Window e já definir as posições dos botões?

Fui claro ou está complicado!? Alguma sugestão?

Obrigado!

Rodrigo Melo

Link to comment
Share on other sites

Kapiaba e Everton,

Sim, como duas barras... Eu vi um exemplo, não me lembro onde, que mostra botões à esquerda e outros à direita.

Não me lembro se ficava numa única barra. Mas lembro-me de que ao ajustar a Dialog / Windows, os botões também eram ajustados...

Mas, valeu a intenção de ajudar. Quando eu encontrar, vou publicar aqui.

Um abraço!

Rodrigo Melo

Link to comment
Share on other sites

Quer uma solução bem arcaica, fiz pra quebrar o galho e ainda está lá. Coloquei botões falsos  no meio, sem nada, dá até vergonha de postar isso, mas

    DEFINE BUTTON oBtn3 FILE "source.BMP" OF oBar ;
        ACTION imprimir()                          ; // relboletim.prg
        TOOLTIP "Imprimir os boletins."            ;
        MESSAGE oemtoansi("Imprimir os boletins gravados") ;
        GROUP ;
        NOBORDER

    DEFINE BUTTON oBtn11 FILE "" OF oBar ;
        ACTION nil ; //calend()                     ;
        TOOLTIP ""                    ;
        MESSAGE ""              ;
        NOBORDER

    DEFINE BUTTON oBtn12 FILE "" OF oBar ;
        ACTION nil ; //calend()                     ;
        TOOLTIP ""                    ;
        MESSAGE ""              ;
        NOBORDER

    DEFINE BUTTON oBtn4 FILE "exit.bmp" OF oBar ;
        ACTION msgYesNo("Deseja sair do programa ?","Informacao", sair(oWnd) , oWnd:End(.t.) ) ; //oWnd:End(.t.)
        TOOLTIP "Finalizar" ;
        MESSAGE "Finalizar o aplicativo"  ;
        NOBORDER

Link to comment
Share on other sites

 

Quer uma solução bem arcaica, fiz pra quebrar o galho e ainda está lá. Coloquei botões falsos  no meio, sem nada, dá até vergonha de postar isso, mas

    DEFINE BUTTON oBtn3 FILE "source.BMP" OF oBar ;
        ACTION imprimir()                          ; // relboletim.prg
        TOOLTIP "Imprimir os boletins."            ;
        MESSAGE oemtoansi("Imprimir os boletins gravados") ;
        GROUP ;
        NOBORDER

    DEFINE BUTTON oBtn11 FILE "" OF oBar ;
        ACTION nil ; //calend()                     ;
        TOOLTIP ""                    ;
        MESSAGE ""              ;
        NOBORDER

    DEFINE BUTTON oBtn12 FILE "" OF oBar ;
        ACTION nil ; //calend()                     ;
        TOOLTIP ""                    ;
        MESSAGE ""              ;
        NOBORDER

    DEFINE BUTTON oBtn4 FILE "exit.bmp" OF oBar ;
        ACTION msgYesNo("Deseja sair do programa ?","Informacao", sair(oWnd) , oWnd:End(.t.) ) ; //oWnd:End(.t.)
        TOOLTIP "Finalizar" ;
        MESSAGE "Finalizar o aplicativo"  ;
        NOBORDER

   DEFINE BUTTON oBtn11 OF oBar PROMPT " " GROUP NOBORDER
   oBtn11:nWidth = (oWnd:nWidth-350)  // (oDlg:nWidth-350)
   oBtn11:disable()

Rubens Ao invés de de 2 button sem titulo no meio colocaria 1 button.

ou tenta assim:

#include "FiveWin.ch"

function Main()
   local oBrush, oBar

   DEFINE WINDOW oWnd FROM 1, 5 TO 20, 100 ;
      TITLE "FiveWin ButtonBar & Menu Management"

   @ 1,1 BUTTONBAR oBar SIZE 150, 33 OF oWnd

   DEFINE BUTTON OF oBar FILE "..\bitmaps\cara.bmp"     MESSAGE "Create a new project" ;
      ACTION MsgInfo( "New Project", "Information" )

   DEFINE BUTTON OF oBar FILE "..\bitmaps\OpenPrj.bmp" MESSAGE "Open a previous project" ;
      ACTION MsgStop( "Open Project", "Stop" )


   DEFINE BUTTON OF oBar FILE "..\bitmaps\Calendar.bmp" MESSAGE "Calling Windows Calendar" ;
      RIGHT ACTION WinExec( "Calendar" ) GROUP

   DEFINE BUTTON OF oBar FILE "..\bitmaps\ClipBoar.bmp" MESSAGE "Looking at ClipBoard" ;
      ACTION WinExec( "Clipbrd" )

   DEFINE BUTTON OF oBar FILE "..\bitmaps\Help.bmp" MESSAGE "Windows Help" ;
      ACTION WinHelp( "progman.hlp" )

   @ 1, oWnd:nWidth-80 BUTTONBAR oBar2 SIZE 33, 33 OF oWnd

   DEFINE BUTTON OF oBar2 FILE "..\bitmaps\cara.bmp"     MESSAGE "Create a new project" ;
      ACTION MsgInfo( "New Project", "Information" )

   ACTIVATE WINDOW oWnd

return nil

ou assim:

#include "FiveWin.ch"

function Main()
   local oWnd, oBar1, oBar2, oBar3, oBar4

   DEFINE WINDOW oWnd FROM 1, 5 TO 20, 100 TITLE "FiveWin ButtonBar"

   DEFINE BUTTONBAR oBar1 TOP 2007 _3D OF oWnd
   DEFINE BUTTON OF oBar1 FILE "..\bitmaps\OpenPrj.bmp" MESSAGE "Open a previous project" ACTION MsgStop( "Open Project", "Stop" )
   DEFINE BUTTON OF oBar1 FILE "..\bitmaps\Calendar.bmp" MESSAGE "Calling Windows Calendar" ACTION WinExec( "Calendar" )
   DEFINE BUTTON OF oBar1 FILE "..\bitmaps\ClipBoar.bmp" MESSAGE "Looking at ClipBoard" ACTION WinExec( "Clipbrd" )

   DEFINE BUTTONBAR oBar2 LEFT 2010 OF oWnd
   DEFINE BUTTON OF oBar2 FILE "..\bitmaps\OpenPrj.bmp" MESSAGE "Open a previous project" ACTION MsgStop( "Open Project", "Stop" )
   DEFINE BUTTON OF oBar2 FILE "..\bitmaps\Calendar.bmp" MESSAGE "Calling Windows Calendar" ACTION WinExec( "Calendar" )

   DEFINE BUTTONBAR oBar3 RIGHT 2010 OF oWnd
   DEFINE BUTTON OF oBar3 FILE "..\bitmaps\OpenPrj.bmp" MESSAGE "Open a previous project" ACTION MsgStop( "Open Project", "Stop" )

   DEFINE BUTTONBAR oBar4 BOTTOM OF oWnd
   DEFINE BUTTON OF oBar4 FILE "..\bitmaps\OpenPrj.bmp" MESSAGE "Open a previous project" ACTION MsgStop( "Open Project", "Stop" )

   ACTIVATE WINDOW oWnd

return nil

 

Link to comment
Share on other sites

Bom dia,

O FWH 17.04 fornece posicionamento de alguns botões alinhados à direita na barra de botões . 
Mas não podemos ter tamanhos diferentes de botões. 

ex:   DEFINE BUTTON OF oBar PROMPT "Setup"   RESOURCE 0x1005D BTNRIGHT

Outra maneira é definir BTNBMP da barra usando @ r, c, BTNBMP .... OF oBar

abraço

João Alpande

Link to comment
Share on other sites

 

Bom dia,

O FWH 17.04 fornece posicionamento de alguns botões alinhados à direita na barra de botões . 
Mas não podemos ter tamanhos diferentes de botões. 

ex:   DEFINE BUTTON OF oBar PROMPT "Setup"   RESOURCE 0x1005D BTNRIGHT

Outra maneira é definir BTNBMP da barra usando @ r, c, BTNBMP .... OF oBar

abraço

João Alpande

Valeu João, obrigado!

Era o que eu estava procurando.

Um abraço!

Rodrigo Melo

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...