Hola
Como puedo poner en una ribbonbar el estilo windows 10 ?
Saludos,
Gabriel
Hola
Como puedo poner en una ribbonbar el estilo windows 10 ?
Saludos,
Gabriel
Puedes poner una imagen?
Gracias
DEFINE RIBBONBAR oRBar WINDOW oWnd PROMPT "Tab 01", "Tab 02", "Tab 03" 2010
Prueba también:
DEFINE RIBBONBAR oRBar WINDOW oWnd PROMPT "Tab 01", "Tab 02", "Tab 03" 2015
Prueba con la cláusula 2015
No es exactamente el mismo, pero se asemeja bastante
Utiliza el estilo 2013 y configura los colores que no te gusten como necesites
Una funcionalidad interesante de las Ribbonbar de office es que haciendo doble click en la pestaña la ribbon se contrae, y unicamente se muestran los títulos de las pestañas asemejando a un menú. ¿ Esto se puede hacer con la RB de FWH ?
Saludos,
José Luis,
De momento no
METHOD LDblClick( nRow, nCol, nFlags ) CLASS TRibbonBar
if ValType( ::bLDblClickQ ) == "B" .and. ::lOverQ
Eval( ::bLDblClickQ, nRow, nCol, nFlags )
endif
if ValType( ::bLDblClick ) == "B"
Eval( ::bLDblClick, nRow, nCol, nFlags )
endif
return nil#include "FiveWin.ch"
#include "ribbon.ch"
function Main()
local oWnd
DEFINE WINDOW oWnd
BuildRibbonBar( oWnd )
ACTIVATE WINDOW oWnd
return nil
function BuildRibbonBar( oWnd )
local oRBar, oGr1_1, oGr2_1, oBtn1_1_1, oBtn2_1_1
DEFINE RIBBONBAR oRBar WINDOW oWnd PROMPT "One", "Two", "Three" HEIGHT 134 TOPMARGIN 25
oRBar:bLDblClick = { || If( oRBar:nHeight > 27, oRBar:nHeight := 27, oRBar:nHeight := 129 ) }
ADD GROUP oGr1_1 RIBBON oRBar TO OPTION 1 PROMPT "new" WIDTH 201 GRADIANT { { 0.1, RGB( 218, 229, 243 ), RGB( 218, 229, 243 ) }, { 0.9, RGB( 199, 216, 237 ), RGB( 218, 229, 243 ) } }
@ 3, 3 ADD BUTTON oBtn1_1_1 PROMPT "new" GROUP oGr1_1 ACTION MsgInfo( "click" ) SIZE 80, 83 TOP
@ 3, 83 ADD BUTTON oBtn2_1_1 PROMPT "new" GROUP oGr1_1 ACTION MsgInfo( "click" ) SIZE 80, 83 TOP
ADD GROUP oGr2_1 RIBBON oRBar TO OPTION 1 PROMPT "new" WIDTH 201 GRADIANT { { 0.1, RGB( 218, 229, 243 ), RGB( 218, 229, 243 ) }, { 0.9, RGB( 199, 216, 237 ), RGB( 218, 229, 243 ) } }
return niloRBar:bLDblClick = { || If( oRBar:nHeight > 27, oRBar:nHeight := 27, oRBar:nHeight := 129 ) }nice

local aClrMenu1 := { { 0.5, RGB( 69, 124, 188 ), RGB( 41, 93, 171 ) }, ;
{ 0.5, RGB( 26, 64, 136 ), RGB( 56, 135, 191 ) } }
local aClrMenu2 := { { 0.5, RGB( 123, 178, 236 ), RGB( 71, 126, 205 ) }, ;
{ 0.5, RGB( 17, 78, 175 ), RGB( 128, 225, 255 ) } }
DEFINE WINDOW oWnd TITLE "RibbonBar Test " + FWVERSION FROM 1,1 to 600,600 PIXEL
DEFINE RIBBONBAR oRBar WINDOW oWnd ;
PROMPT "Configuración", "Ficheros", "Informes", "Ayudas" ;
HEIGHT 133 TOPMARGIN 25 2013
oRBar:nRoundBox := 0
oRBar:nSeparation( 1 )
// BackStage( oRBar )
oRBar:nLeftMargin = 75
oRBar:CalcPos()
oTBtn0 = TRBtn():New( 4, 0, 75, 20, "..\bitmaps\rbnmenu.bmp", { || oRBar:BackStage() /* oRBar:KeybMode() */ }, oRBar,;
,,,,,, .F., .T.,,,,,, "POPUP", oMenu,,,,,,,,,,,,, aClrMenu1, nRGB( 125, 172, 215 ),;
nRGB( 65, 106, 189 ), oRBar:nRoundBox, )
oTBtn0:aClrGradOver = { || aClrMenu2 }
oTBtn0:aClrGradBack = aClrMenu2
oTBtn0:bClrGradSubOver = { || aClrMenu2 }Antonio Linares wrote:José Luis,
Modificando asi el Método LDblClick() en la Clase TRibbonBar y con el ejemplo que te pongo a continuación se consigue el efecto que comentas:
METHOD LDblClick( nRow, nCol, nFlags ) CLASS TRibbonBar if ValType( ::bLDblClickQ ) == "B" .and. ::lOverQ Eval( ::bLDblClickQ, nRow, nCol, nFlags ) endif if ValType( ::bLDblClick ) == "B" Eval( ::bLDblClick, nRow, nCol, nFlags ) endif return nil
Aqui tienes un ejemplo que se comporta como indicas:
#include "FiveWin.ch" #include "ribbon.ch" function Main() local oWnd DEFINE WINDOW oWnd BuildRibbonBar( oWnd ) ACTIVATE WINDOW oWnd return nil function BuildRibbonBar( oWnd ) local oRBar, oGr1_1, oGr2_1, oBtn1_1_1, oBtn2_1_1 DEFINE RIBBONBAR oRBar WINDOW oWnd PROMPT "One", "Two", "Three" HEIGHT 134 TOPMARGIN 25 oRBar:bLDblClick = { || If( oRBar:nHeight > 27, oRBar:nHeight := 27, oRBar:nHeight := 129 ) } ADD GROUP oGr1_1 RIBBON oRBar TO OPTION 1 PROMPT "new" WIDTH 201 GRADIANT { { 0.1, RGB( 218, 229, 243 ), RGB( 218, 229, 243 ) }, { 0.9, RGB( 199, 216, 237 ), RGB( 218, 229, 243 ) } } @ 3, 3 ADD BUTTON oBtn1_1_1 PROMPT "new" GROUP oGr1_1 ACTION MsgInfo( "click" ) SIZE 80, 83 TOP @ 3, 83 ADD BUTTON oBtn2_1_1 PROMPT "new" GROUP oGr1_1 ACTION MsgInfo( "click" ) SIZE 80, 83 TOP ADD GROUP oGr2_1 RIBBON oRBar TO OPTION 1 PROMPT "new" WIDTH 201 GRADIANT { { 0.1, RGB( 218, 229, 243 ), RGB( 218, 229, 243 ) }, { 0.9, RGB( 199, 216, 237 ), RGB( 218, 229, 243 ) } } return nil
Este es el código en concreto que hace lo que has comentado:
oRBar:bLDblClick = { || If( oRBar:nHeight > 27, oRBar:nHeight := 27, oRBar:nHeight := 129 ) }