Tomas Valusek napsal(a):
Dobrý den,

mám jeden námět. Docela bych uvítal návod, jak pomocí makra přidat do toolbaru combo box nebo jiný ovládací prvek s výjimkou tlačítka. Já bych takový combo box využil k indikaci a změně aktuálního zoomu zadáním číselné hodnoty.

Ve spodním stavovém řádku to v podstatě je. Když se dvojklikne na pole 
zobrazující
měřítko tak se zjeví dialog "Lupa" kde si jde vybrat nebo nastavit ručně.
Je to ale pár zbytečných kliků navíc. Plynule lze měnit zoom také pomocí 
Ctrl+kolečko
myši. Osobně celkem úspěšně Ctrl+kolečka v kombinaci se dvěma makry přiřazeným 
klávesovým zkratkám:

' Nastavi zoom na optimalni šírku - prirazeno k Ctrl-0
sub Zoom_optimal dim document as object
dim dispatcher as object
dim args1(2) as new com.sun.star.beans.PropertyValue
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
args1(0).Name = "Zoom.Value"
args1(0).Value = 0
args1(1).Name = "Zoom.ValueSet"
args1(1).Value = 28703
args1(2).Name = "Zoom.Type"
args1(2).Value = 1
dispatcher.executeDispatch(document, ".uno:Zoom", "", 0, args1())
end sub

' Nastaví zoom na celou stránku - prirazeno k Ctrl-*
sub Zoom_CelaStranka
dim document   as object
dim dispatcher as object
dim args1(2) as new com.sun.star.beans.PropertyValue
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
args1(0).Name = "Zoom.Value"
args1(0).Value = 0
args1(1).Name = "Zoom.ValueSet"
args1(1).Value = 28703
args1(2).Name = "Zoom.Type"
args1(2).Value = 2
dispatcher.executeDispatch(document, ".uno:Zoom", "", 0, args1())
end sub

Plovoucí dialog by šlo doprogramovat ale zatím nevím jak zjistit hodnotu
aktuálního zoomu, ale nezdá se mi to v konečném výsledku moc praktické:
dialog může překážet, navíc je třeba obsluhovat jeho aktivaci.

Celkem snadno by šel udělat add-on od/instalovatelný pomocí správce balíků,
který by přidal nový toolbar s tlačítky přednastavených měřítek, např:
Optimal, Okraje, Stránka, 50%, 100%, 200%.

Zdraví Tom B.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Odpovedet emailem