#xcommand @ <nTop>, <nLeft> VMENU [ <oAch> ] ;
[ SIZE <nWidth>, <nHeigth> ] ;
[ <dlg:OF,DIALOG> <oDlg> ] ;
[ ACTION <uAction,...> ] ;
[ ON CHANGE <uChange,...> ] ;
[ FONT <oFont> ] ;
[ HEIGHT ITEM <nHItem> ] ;
[ <mode: CENTER, RIGHT, MULTILINE> ] ;
[ <under: UNDERLINE, INSET, SOLID, XBOX, SOLIDUNDERLINE, BUMP, ETCHED, RAISED> ];
[ <lBorder: BORDER> ] ;
[ <color: COLOR, COLORS> <nClrText> [,<nClrPane>[, <nClrPane2> ] ] ] ;
[ COLORBORDE <nClrBorde> ] ;
[ COLORSELECT <nClrTSel> [,<nClrPSel>[,<nClrPSel2> ] ] ] ;
[ COLOROVER <nClrTxtOver>[, <nClrPOver>[,<nClrPOver2> ] ] ] ;
[ MARGIN <nMargen> ] ;
[ SPEEDS <nSpeed> ] ;
[ <selmode: NONE, LFILLED, RFILLED, FILLED, LFOLDER, RFOLDER> ] ;
[ ATTACH TO <oAttach> ] ;
[ <lVGrad: VERTICALGRADIENT > ] ;
[ <lMGrad: MIRROW > ] ;
[ WATERMARK <cWaterMark> ] ;
[ NTRANSPARENT <nTrans> ] ;
=> ;
[ <oAch> := ] TVMenu():New( <nTop>, <nLeft>, <nWidth>, <nHeigth>, <oDlg> ,;
[{|this|<uAction>}] ,;
[<nClrText>] ,;
[<nClrPane>] ,;
[<oFont>] ,;
[<.lBorder.>] ,;
[<nClrBorde>] ,;
[<nHItem>] ,;
[ Upper(<(mode)>) ] ,;
[ Upper(<(under)>) ] ,;
[ <nMargen> ] ,;
[ <nClrPSel> ] ,;
[ <nSpeed> ] ,;
[ Upper(<(selmode)>) ] ,;
[{|Self|<uChange>}] ,;
[ <nClrTSel> ] ,;
[ <oAttach>] ,;
[ <nClrTxtOver> ] ,;
[ <nClrPOver> ] ,;
[ <nClrPOver2> ] ,;
[ <nClrPSel2> ] ,;
[ <.lVGrad.> ] ,;
[ <.lMGrad.> ] ,;
[ <nClrPane2> ] ,;
[ <cWaterMark>] ,;
[ <nTrans> ] )
#xcommand REDEFINE VMENU [ <oAch> ] ;
[ <dlg:OF,DIALOG> <oDlg> ] ;
[ ACTION <uAction,...> ] ;
[ ON CHANGE <uChange,...> ] ;
[ ID <nID> ] ;
[ FONT <oFont> ] ;
[ HEIGHT ITEM <nHItem> ] ;
[ <mode: CENTER, RIGHT, MULTILINE> ] ;
[ <under: UNDERLINE, INSET, SOLID, XBOX, SOLIDUNDERLINE> ];
[ <lBorder: BORDER> ] ;
[ <color: COLOR, COLORS> <nClrText> [,<nClrPane>[, <nClrPane2>] ] ] ;
[ COLORBORDE <nClrBorde> ] ;
[ COLORSELECT <nClrTSel> [,<nClrPSel>[,<nClrPSel2> ] ] ] ;
[ COLOROVER <nClrTxtOver>[, <nClrPOver>[,<nClrPOver2> ] ] ] ;
[ MARGIN <nMargen> ] ;
[ SPEEDS <nSpeed> ] ;
[ <selmode: NONE, LFILLED, RFILLED, FILLED, LFOLDER, RFOLDER> ] ;
[ ATTACH TO <oAttach> ] ;
[ <lVGrad: VERTICALGRADIENT > ] ;
[ <lMGrad: MIRROW > ] ;
[ WATERMARK <cWaterMark> ] ;
[ NTRANSPARENT <nTrans> ] ;
=> ;
[ <oAch> := ] TVMenu():Redefine( <oDlg>,<nID> ,;
[{|this|<uAction>}] ,;
[<nClrText>] ,;
[<nClrPane>] ,;
[<oFont>] ,;
[<.lBorder.>] ,;
[<nClrBorde>] ,;
[<nHItem>] ,;
[ Upper(<(mode)>) ] ,;
[ Upper(<(under)>) ] ,;
[ <nMargen> ] ,;
[ <nClrPSel> ] ,;
[ <nSpeed> ] ,;
[ Upper(<(selmode)>) ] ,;
[{|Self|<uChange>}] ,;
[ <nClrTSel>] ,;
[ <oAttach>] ,;
[ <nClrTxtOver> ] ,;
[ <nClrPOver> ] ,;
[ <nClrPOver2> ] ,;
[ <nClrPSel2> ] ,;
[ <.lVGrad.> ] ,;
[ <.lMGrad.> ] ,;
[ <nClrPane2> ] ,;
[ <cWaterMark>] ,;
[ <nTrans> ])
#xcommand DEFINE TITLE OF <oAch> ;
[ CAPTION <cCaption> ] ;
[ HEIGHT <nHTitle> ] ;
[ FONT <oFont> ] ;
[ COLOR <nClrText>[,<nClrPane> [,<nClrPane2>[,<nSteps> ] ] ] ] ;
[ <lVGrad: VERTICALGRADIENT > ] ;
[ <lMGrad: MIRROW > ] ;
[ IMGBTN <cBtnUp>[, <cBtnDown>]] ;
[ IMAGE <cImage> ] ;
[ ICON <cIcon> ] ;
[ <mode: CENTER, RIGHT, MULTILINE> ] ;
[ <lOpenClose:OPENCLOSE > ] ;
[ RADIOBTN <nRadio> ] ;
[ <lRndSquare:ROUNDSQUARE > ] ;
[ RADIOSQUARE <nRadSqr> ] ;
[ LEFT <nLeftTText> ] ;
[ LEFTIMAGE <nLeftTImg> ] ;
=> ;
<oAch>:SetTitle( [ <cCaption> ] ,;
[ <nHTitle> ] ,;
[ <oFont> ] ,;
[ <nClrText> ] ,;
[ <nClrPane> ] ,;
[ <nClrPane2> ] ,;
[ <nSteps> ] ,;
[ <.lVGrad.> ] ,;
[ <cImage> ] ,;
[ Upper(<(mode)>) ] ,;
[ <cIcon> ] ,;
[ <cBtnUp> ] ,;
[ <cBtnDown> ] ,;
[ <.lOpenClose.> ] ,;
[ <nRadio> ] ,;
[ <.lRndSquare.> ] ,;
[ <.lMGrad.> ] ,;
[ <nRadSqr> ] ,;
[ <nLeftTText> ] ,;
[ <nLeftTImg> ] )
#xcommand DEFINE VMENUITEM [ <oItem> ] ;
[ WIDTH <nWidth> ] ;
[ HEIGHT <nHeigth> ] ;
[ LEFT <nLeft> ] ;
[ OF <oAch> ] ;
[ ACTION <uAction,...> ] ;
[ <color: COLOR, COLORS> <nClrText> [,<nClrPane>[,<nClrPane2>[,<nSteps>] ] ] ] ;
[ <lVGrad: VERTICALGRADIENT > ] ;
[ <lMGrad: MIRROW > ] ;
[ CAPTION <cCaption> ] ;
[ IMAGE <image> [, <imageover> ] ] ;
[ <lIcon: ICON> ] ;
[ <lGroup: GROUP> ] ;
[ <separator: SEPARADOR, LINE, INSET, DOTDOT > ] ;
[ <mode: CENTER, RIGHT, MULTILINE > ] ;
[ LEFTIMAGE <nLeftImg> ] ;
[ <imagesite: IMAGECENTER, IMAGERIGHT > ] ;
[ <lUnderline: UNDERLINE > ] ;
[ MENU <oPopup> ] ;
[ COLORSEPARADOR <nColorSep> ];
[ COLORSELECT <nClrTxtSel>[, <nClrPSel>[, <nClrPSel2> ] ] ] ;
[ TOOLTIP <cToolTip> ];
[ TOP <nTopTxt> ] ;
[ WHEN <bWhen,...> ] ;
[ <lNoHilite: NOHILITE> ] ;
=> ;
[ <oItem> := ] TVItem():New( <oAch> ,;
<cCaption> ,;
<image> ,;
<imageover> ,;
<.lGroup.> ,;
<nClrText> ,;
<nClrPane> ,;
[Upper(<(mode)>)] ,;
[Upper(<(imagesite)>)],;
<nHeigth> ,;
<nLeft> ,;
[Upper(<(separator)>)],;
<nWidth> ,;
<.lUnderline.> ,;
<nLeftImg> ,;
<nClrPane2> ,;
<.lVGrad.> ,;
[{|this|<uAction>}] ,;
<oPopup> ,;
[<nClrPSel>] ,;
[<nClrTxtSel>] ,;
[ <.lMGrad.>] ,;
[ <nSteps>] ,;
[ <cToolTip> ] ,;
<nColorSep> ,;
[ <.lIcon.>] ,;
[ <nTopTxt> ] ,;
[{|Self|<bWhen>} ] ,;
[<nClrPSel2>] ,;
<.lNoHilite.> )
#xcommand SET DIALOG [ <cResName> ] ;
[ TO <oxItem> ] ;
=> ;
<oxItem>:SetDialog( <cResName> )
Sintaxis de creación de vTaskBar
REDEFINE VMENU [ <oAch> ] ; Creación del vTaskBar desde recursos.
#xcommand @ <nTop>, <nLeft> VMENU [ <oVMenu> ] ; Coordenadas del vTaskBar y nombre del objeto. Creado desde código
[ SIZE <nWidth>, <nHeigth> ] ; Tamaño en pixels del vTaskBar. Por construción de FiveWin, cuando creamos
un control en una caja de diálogo estas medidas no son muy fiables y habrá
que "tantearlas". En las ventanas se ajustan sin problema.
[ <dlg:OF,DIALOG> <oDlg> ] ; Ventana o caja de diálogo a quien pertenece el vTaskBar.
[ ACTION <uAction,...> ] ; Acción que se ejecuta cuando se selecciona un elemento de vTaskBar. Se puede,
especificar una acción, independientemente, para cada elemento.
[ ON CHANGE <uChange,...> ] ; Acción a realizar cuando cambie la opción seleccionada
[ FONT <oFont> ] ; Fuente a asignar a los elementos del vTaskBar. A cada elemento de vTaskBar se le
puede indicar independientemente si es negrita o subrayada.
[ HEIGHT ITEM <nHItem> ] ; Altura de los elementos del vTaskBar. Se puede ajustar posteriormente la altura de
cada uno.
[ <mode: CENTER, RIGHT, MULTILINE> ] ; Alineación genereal de los elementos del vTaskBar. Configurable individualmente
[ <under: UNDERLINE, INSET, SOLID, XBOX, SOLIDUNDERLINE> ]; Modo de representar el elemento seleccionado o el elemento sobre el que está
en ese momento el cursor del ratón.
UNDERLINE: Subrayado, efecto hipervínculo
INSET: Línea 3d
SOLID: Rectángulo relleno de color.
XBOX: Rectángulo sin relleno de fondo
SOLIDUNDERLINE: Subrayado y relleno al mismo tiempo
[ <lBorder: BORDER> ] ; vTaskBar con borde al rededor
[ <color: COLOR, COLORS> <nClrText> [,<nClrPane> ] ] ; Color del texto de los elementos y color del fondo del vTaskBar. Configurable
individualmente
[ COLORBORDE <nClrBorde> ] ; Color del borde del vTaskBar
[ COLORSELECT <nClrTextSelect>[, <nClrPaneSelect> ] ] ; Color de la opción seleccionada. Texto y fondo
[ MARGIN <nMargen> ] ; Margen izquierdo por defecto del texto de los elementos del vTaskBar
[ SPEEDS <nSpeed> ] ; Velocidad con la que se pliega el vTaskBar en caso de definirlo en el título como
OPENCLOSE
[ <selectionmode: NONE, LFILLED, RFILLED, FILLED, LFOLDER, RFOLDER> ] ; Modo de selección
NONE: No colorea la selección.
LFILLED: (No operativo en esta versión )
RFILLED: (No operativo en esta versión )
FILLED: Rellena de color la opción seleccionada (No operativo en esta versión )
LFOLDER y RFOLDER: Deja sin pintar la línea de la izquierda o de la derecha en
selección XBOX. Útil para simular un TabControl vertical (No operativo en esta versión )
[ ATTACH TO <oAttach> ] ; Si queremos hacer que nuestro vTaskBar se mueva cuando un vTaskBar superior se
abra o se cierre, tendremos que indicarle con esta opción a que vTaskBar estará
enganchado.
Definición de título de vTaskBar
#xcommand DEFINE TITLE OF <oAch> ; Indicamos al vTaskBar que va a tener un título. Semejante a una ventana
[ CAPTION <cCaption> ] ; Texto que aparecerá en el título
[ HEIGHT <nHTitle> ] ; Altura de la barra de título del vTaskbar
[ FONT <oFont> ] ; Fuente a utilizar en la barra de título del vTaskbar. Por defecto usará la que
use Windows en las barras de título de las ventanas.
[ COLOR <nClrText>[,<nClrPane> [,<nClrPane2>[,<nSteps> ] ] ] ] ; Color de la barra de título:
1º Color de texto
2º Color de fondo
3º En caso de indicar un color de fondo, la barra de título se pintará de forma
degradada utilizando el primer color de fondo como primer color del degradado
y el segundo color de fondo será el color hacia el que se vaya degradando el
inicial.
4º Densidad del color degradado (No operativo en esta versión )
[ <lVGrad: VERTICALGRADIENT > ] ; Degradado vertical. En caso de no indicar esta opción y estar declarados dos colores
de fondo, el degradado será horizontal.
[ <lMGrad: MIRROW > ] ; Efecto "espejo" en el degradado. Empezará en el primer color, seguira con el segundo y
terminará otra vez con el primero.
[ IMGBTN <cBtnUp>[, <cBtnDown>]] ; Si hacemos que el menú sea OPENCLOSE, el control vTaskbar pintará un botón de
dos flechas hacia arriba o hacia abajo según el control se encuentre plegado o desplegado.
si indicamos dos imágenes, el control sustituirá el botón por defecto por estas dos
imágenes.
En la actualidad esta versión de vTaskbar no tiene encuenta los temas de XP por lo
cual, si deseamos el efecto, tendremos que hacerlo a mano. La siguiente versión de
vTaskbar ya dispondrá de esta opción.
[ IMAGE <cImage> ] ; Imágen a pintar en la barra de título. En este caso solo puede ser un bitmap. No se
necesita indicar si esta o no en recursos. El programa discrimina en función de que
se encuentre un punto "." o no. En caso de que lo haya lo carga de fichero, sino
de recursos.
CanalFive vTaskbar hace una gestión económica de los recursos por lo que el usuario
no tendrá que preocuparse por ellos.
[ ICON <cIcon> ] ; Imagen de la barra de título. En este caso indicamos un icono.
[ <mode: CENTER, RIGHT, MULTILINE> ] ; Alineación del texto en la barra de título
[ <lOpenClose:OPENCLOSE > ] ; Permite que vTaskbar pueda plegarse y desplegarse pulsando el botón que aparecerá
en la barra de título. El cursor cambiará a un cursor en forma de mano apuntando.
[ RADIOBTN <nRadio> ] ; Radio del botón que se pinta cuando indicamos que el vTaskbar es OPENCLOSE.
[ <lRndSquare:ROUNDSQUARE > ] ; Esquinas redondeadas de la barra de título de vTaskbar.
[ RADIOSQUARE <nRadSqr> ] ; Radio de las esquinas redondeadas de la barra de título si se elige la opción
ROUNDSQUARE
[ LEFT <nLeftTText> ] ; Ubicación izquierda absoluta del texto de la barra de título.
[ LEFTIMAGE <nLeftTImg> ] ; Ubicación izqueirda absoluta de la imagen de la barra de vTaskBar
Elementos de vTaskBar
#xcommand DEFINE VMENUITEM [ <oItem> ] ; Definición de un elemento del vTaskBar. Se puede almacenar su referencia en una
variable. Es útil si mas adelante deseamos referirnos desde código a sus propiedades
o si queremos que la imagen del elemento sea la misma de otro ya definido.
[ WIDTH <nWidth> ] ; Anchura del elemento. Por defecto la definida para el vTaskBar
[ HEIGHT <nHeigth> ] ; Altura para el elemento. Por defecto la definida para el vTaskBar
[ LEFT <nLeft> ] ; Ubicación izquierda absoluta del texto. Por defecto coincidiría con el margen establecido
en vTaskBar
[ OF <oAch> ] ; Indicación del objeto vTaskBar a quien pertenece.
[ ACTION <uAction,...> ] ; Acción a realizar cuando se seleccione. Esta acción sobrescribe la que se pudiera haber
definido en vTaskBar.
[ <color: COLOR, COLORS>
<nClrText> [,<nClrPane>[,<nClrPane2>[,<nSteps>] ] ] ] ; Color de texto, fondo, degradado y densidad del degradado. El útimo parámetro no
está operativo en esta versión
[ <lVGrad: VERTICALGRADIENT > ] ; Degradado vertical. Por defecto, si se indica un segundo color de fondo, el degradado
será horizontal
[ <lMGrad: MIRROW > ] ; Efecto espejo en el degradado.
[ CAPTION <cCaption> ] ; Texto del elemento del vTaskBar
[ IMAGE <image> [, <imageover> ] ] ; Imagen a visualizar en el elemento del vTaskBar. El segundo parámetro no está operativo en
esta versión.
[ <lIcon: ICON> ] ; En lugar de un bitmap, se puede indicar un icono.
[ <lGroup: GROUP> ] ; El elemento del vTaskBar no será seleccionable.
[ <separator: SEPARADOR, LINE, INSET, DOTDOT > ] ; El elemento del vTaskBar se mostrará como un separador, línea, línea3d o línea
de puntos. El color será el color definido en la opción COLORSPEARADOR
[ <mode: CENTER, RIGHT, MULTILINE > ] ; Alineamiento del texto.
[ LEFTIMAGE <nLeftImg> ] ; Ubicación izquierda absoluta de la imagen.
[ <imagesite: IMAGECENTER, IMAGERIGHT > ] ; Alineación de la imagen. Por defecto la imagen se muestra en el lado izquierdo.
No tendrá efecto si se indica una ubicación absoluta.
[ <lUnderline: UNDERLINE > ] ; La opción se pintará subrayada.
[ MENU <oPopup> ] ; El elemento de vTaskBar pintará una flecha en la parte izquierda para mostrar
el menú popup indicado en esta opción. El citado menú se mostrará al pulsar
sobre el elemento.
[ COLORSEPARADOR <nColorSep> ]; Color del separador
[ COLORSELECT <nClrTxtSel>[, <nClrPSel> ] ] ; Color de la opción cuando esté seleccionada. Texto y fondo.
[ TOOLTIP <cToolTip> ]; Texto del tooltip para cada elemento del vTaskBar
[ TOP <nTopTxt> ] ; Ubicación superior absoluta para el elemento del menú.
[ WHEN <bWhen,...> ] ; Posibilidad de habilitar o deshabilitar el elemento definiendo un codeblock.
Daniel Garcia-Gil wrote:Hello
please post a screen shot about you want
thanks
* New: Class TExplorerList. It mimics the Windows 7 vertical lists where all the computer and
the network is explored. Please review samples\listbar.prg. It is a great example!
#include "FiveWin.ch"
#include "ttitle.ch"
#include "ribbon.ch"
FUNCTION Main()
LOCAL oWnd
LOCAL oExplorerList
LOCAL oItem, oSubItem
LOCAL oTitle, oBtn
menu oPopup popup 2010
menuitem "Cut"
menuitem "Copy"
menuitem "Paste"
menuitem "Undo"
menuitem "Redo"
separator
menuitem "Select All"
separator
menuitem "Layout"
menuitem "Folder and search option"
separator
menuitem "Delete"
menuitem "Rename"
menuitem "Remove properties"
menuitem "Properties"
separator
menuitem "Close"
endmenu
DEFINE WINDOW oWnd
@ 015,150 TITLE oTitle size 100, 30 of oWnd SHADOW NOSHADOW;
GRADIENT { { 0.5, RGB(0xfa,0xfc,0xfd), RGB(0xe6,0xf0,0xfa) },;
{ 0.5, RGB(0xdc,0xe6,0xf4), RGB(0xdd,0xe9,0xf7) } }
@ 5, 10 rbbtn oBtn prompt "Organize" of oTitle transparent ;
size 100, 22 round rsize 3 popup;
linecolors RGB(0xf9,0xfb,0xfe), RGB(0xbb,0xca,0xdb);
menu oPopup center
oBtn:bClrGradNormal = {| l |;
if( l, ( { { 0.5, RGB(0xfa,0xfc,0xfd), RGB(0xe6,0xf0,0xfa) },;
{ 0.5, RGB(0xdc,0xe6,0xf4), RGB(0xdd,0xe9,0xf7) } } ),;
( { { 0.5, RGB(0xfd,0xfe,0xff), RGB(0xed,0xf2,0xfa) },;
{ 0.5, RGB(0xd7,0xe4,0xf4), RGB(0xc1,0xd2,0xe8) } } ) ) }
oExplorerList = TExplorerList():New( 0, 0, oWnd, .T., .F., 200, 300 )
oItem = oExplorerList:AddItem( "Favorities" )
oSubItem = oItem:AddItem( "Recent Places" )
oSubItem:lNoMini = .T.
oSubItem = oItem:AddItem( "Download" )
oSubItem:lNoMini = .T.
oSubItem = oItem:AddItem( "Desktop" )
oSubItem:lNoMini = .T.
oItem = oExplorerList:AddItem( "Libraries" )
oSubItem = oItem:AddItem( "Video" )
oSubItem:lNoMini = .T.
oSubItem = oItem:AddItem( "Pictures" )
oSubItem:lNoMini = .T.
oSubItem = oItem:AddItem( "Music" )
oSubItem:lNoMini = .T.
oSubItem = oItem:AddItem( "Documents" )
oSubItem:lNoMini = .T.
oItem = oExplorerList:AddItem( "Homegroup" )
oItem = oExplorerList:AddItem( "Computer" )
oItem = oExplorerList:AddItem( "Network" )
oWnd:oTop := oTitle
oWnd:oLeft := oExplorerList
ACTIVATE WINDOW oWnd
RETURN NIL
@ 015,150 TITLE oTitle size 100, 30 of oWnd SHADOW NOSHADOW;
GRADIENT { { 0.5, RGB(0xfa,0xfc,0xfd), RGB(0xe6,0xf0,0xfa) },;
{ 0.5, RGB(0xdc,0xe6,0xf4), RGB(0xdd,0xe9,0xf7) } }
@ 0.5,50 say "I am a Say:" of oWnd transparent
@ 0.5,45 get cGet of oWnd SIZE 110, 22 ;
ACTION browse()
Return to FiveWin for Harbour/xHarbour
Users browsing this forum: Google [Bot] and 10 guests