Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

31 Июль 2021, 09:39 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Здесь можно поблагодарить участников форума Улыбка
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: « 1 2   Вниз
  Печать  
Автор Тема: Программируемый Диалог  (Прочитано 4937 раз)
0 Пользователей и 1 Гость смотрят эту тему.
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 3 077


iMac, LibreOffice и Apache OpenOffice


« Ответ #54900: 13 Июнь 2020, 19:01 »

Разные методы по разному размеры считают?
На то они и разные.

Ещё можно сконвертировать размеры, проверьте такой вариант:
Код:
Sub DlgDisplay
Dim oWindow, winSize, oDlg, oDlgModel, newSize, w%, h%, bt
oWindow = CreateUnoService("com.sun.star.awt.Toolkit")
winSize = oWindow.ActiveTopWindow.Size
oDlgModel = CreateUnoService("com.sun.star.awt.UnoControlDialogModel")
oDlgModel.setPropertyValue("Title", "Диалог - Большое Окно")
oDlg = CreateUnoService("com.sun.star.awt.UnoControlDialog")
oDlg.setModel(oDlgModel)
oDlg.createPeer(oWindow, null)

newSize = oDlg.convertSizeToLogic(winSize, 17)   '17 или 18
w = newSize.Width
h = newSize.Height

oDlgModel.setPropertyValue("Width", w)
oDlgModel.setPropertyValue("Height", h)

bt = oDlgModel.createInstance("com.sun.star.awt.UnoControlButtonModel")
bt.setPropertyValues(Array("Height","PositionX","PositionY","PushButtonType","Label","Width"),Array(15, w-50, h-20, 1, "Step", 40))
oDlgModel.insertByName("StepButton",bt)
oDlg.execute()
End Sub
Записан

Страниц: « 1 2   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!