Messagebox Python Writer

Автор Ципихович Эндрю, 12 января 2024, 07:18

0 Пользователи и 1 гость просматривают эту тему.

economist

Думаю это невозможно с окном.
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

sokol92

#46
LibreOffice позволяет создание сложных диалогов, в том числе:
  • не перемещаемых
  • изменяемых в размерах
  • внутри окон документов или как независимое окно в приложении
и т.д.
Но это уже для "магистров".  :)

Сказанное относится именно к диалогам, а не конкретно к (системному диалогу) Msgbox.

Могу, когда появится время, выложить примеры (но не готов давать подробные пояснения).
Владимир.

Ципихович Эндрю

Цитата: sokol92 от 15 января 2024, 17:24Могу, когда появится время, выложить примеры (но не готов давать подробные пояснения)
ну хоть так....спасибо

sokol92

Вот, собрал пример из подручных средств.

1. Макрос ResizableDialog создает немодальный диалог, размеры которого пользователь может менять на лету.
Для завершения диалога нужно нажать Esc.
Диалог содержит текстовое поле, размеры которого меняются при изменении размера диалог. Можно поместить в это поле (длинный) текст и наблюдать, как будут производиться переносы слов при изменении размера.

2. Макрос NonMoveableDialog создает немодальный неперемещаемый диалог. Стартовые координаты можно изменить при вызове метода oContainer.setPosSize (сейчас это X=100, Y=200).


Владимир.

Ципихович Эндрю

sokol92, спасибо за файл, я бы мог в ответе #47 попросить "только ради бога приложите пример НЕ в экселе=Calc, а в ворде=Writer"
но получил пример в calc, в программировании я начинал с vba, правда несколько последних лет к нему не возвращаюсь, и по моему как ни крути либру сделали полностью глядя на ворд, а нынешний мойофисс тем паче ваяют по подобии их обоих и привносят что-то своё
я к тому, что моих знаний в vba недостаточно для освоения либры, а жаль...
на скрине видно, что открыт файл Calc "Dialogs.ods" и открыт файл Writer "Без имени 1" - сейчас проверил у офиса от майкрософта такое невозможно)) тут каждый думает хорошо это или плохо....
так вопросов два:
у файла "Dialogs.ods" ниже под модулем "Module1" находится "Dialod3" это я бы сказал форма - что это на либровском языке?
как из папки "Standart" файла "Dialogs.ods" всё закинуть, в папку "Standart" файла "Без имени 1"?
спасибо

bigor

Цитата: Ципихович Эндрю от 16 января 2024, 10:50"Standart" файла "Dialogs.ods" всё закинуть, в папку "Standart" файла "Без имени 1"
находясь в Dialogs.ods жмем Alt+F11, в появившемся окне кнопку Управление... , далее закладка диалоги, раскрываем стрелочками все подпунктики и с зажатым Ctrl тянем dialog3 из библиотеки Standart Dialogs.ods в библиотеку odt файла. Аналогично с макросами только тянем модуль
Поддержать наш форум можно здесь

Ципихович Эндрю

bigor - понятно, спасибо сделано
меня вот тот элемент заинтересовал который внутри окна, в который можно вводить текст (заинтересовал тем, что у него имеется возможность переносить строки) он как называется? не в курсе есть такой элемент в вба от ворда?

а есть такой же элемент, чтобы также был перенос строк но без ввода текста - лейбл в либре, как называется?
спасибо

у меня в ворде подобное сделано, но в используемом элементе нет возможности переносить строки, я забыл его название, да и проект ещё потерялся, найду проект узнаю об элементе - будет более предметный разговор...

sokol92

#52
В "русскоязычном" интерфейсе элемент управления для ввода текста называется "Текстовое поле" (UnoControlEdit).
За перенос слов отвечает свойство "Многострочный ввод" (MultiLine).
Элемент управления для отображения неизменяемого текста называется "Метка" (UnoControlFixedText). За перенос слов отвечает свойство с тем же именем, которое указано выше.

Наконец, соответствующее свойство в Microsoft Forms называется ... MultiLine (в совокупности с WordWrap).
Владимир.

Ципихович Эндрю

sokol92 спасибо за ответ, сгубило ведь меня любопытство........ когда я писал пост # 49
тема топика Messagebox Python Writer
Messagebox созданный на Python две строки кода - смотреть # 12
Messagebox созданный на Python, поддающийся копированию - смотреть # 34
остальное можно и затереть - не мне решать
а сейчас то вопрос:
Messagebox созданный на Python, желательно, но не обязательно поддающийся копированию с параметрами x=100, y=100, width=300, height=100 (кому нужно на бейсике - смотреть # 48)
такое можно сваять? спасибо

sokol92

Если мы работаем с объектами документов LibreOffice, то нет особой разницы между применением Basic и Python. Исключение - функции пользователя, которые используются в формулах на листах документов Calc (UDF - функции).

Я в настоящее время пишу макросы на LO Basic в силу исторических причин (ранее писал (и пишу) на Excel VBA). Не думаю, что при переводе макросов из примера #49 на Python у специалиста по Python возникнут проблемы.
Владимир.

Ципихович Эндрю

Цитата: sokol92 от 16 января 2024, 20:37из примера #49
ошибка нужно было указать 48
понял