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

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

9 Март 2021, 00:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Сообщений: 33


« Ответ #15: 27 Октябрь 2016, 14:40 »

Public oDrawDoc
а оставлю ка я так, поскольку в двух системах приходится запускать мало ли что Улыбка
Записан
spyAndrey
Участник
**
Offline Offline

Сообщений: 33


« Ответ #16: 28 Октябрь 2016, 14:32 »

Результат такой: хоть я и оптимизировал код, но работает только с wait 1000, поэтому делаю вывод, что проблема в OS Ubuntu, система не успевает создать рисунок
Записан
JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #17: 28 Октябрь 2016, 14:54 »

Уговорил, показывай последний вариант - будем править
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
kompilainenn
Мастер
*****
Offline Offline

Сообщений: 3 177



« Ответ #18: 28 Октябрь 2016, 15:07 »

Уговорил, показывай последний вариант - будем править
работает - не трогай!
Записан

Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут
JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #19: 28 Октябрь 2016, 15:28 »

"Ой да ладно!.. Чего один человек смастерить сумел, другой завсегда починить сможет!.." - "Ты что сделал, подлец?!!"
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
rami
Гуру
*******
Offline Offline

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


iMac, LibreOffice и Apache OpenOffice


« Ответ #20: 28 Октябрь 2016, 15:47 »

Уговорил, показывай последний вариант - будем править
Тогда и я свой афоризм добавлю: "Последний вариант — лучшее начало"
Записан

JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #21: 28 Октябрь 2016, 16:14 »

Ага, и до кучи - "Самая последняя ошибка в программе всегда только предпоследняя"
Это я к тому, что wait 1000 - это всего одна секунда. И если в какой-то момент подгруженная Ubuntu не успеет создать draw за отведенное время - опять вылезет ошибка
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
mikekaganski
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 2 050


« Ответ #22: 29 Октябрь 2016, 13:50 »

Код:
' ----------------------------------------------- XEventListener ------------------------------------------------------
' ------------------------ See https://forum.openoffice.org/en/forum/viewtopic.php?f=21&t=10123 ------------------------
global oXEventListener as object
global oXEventListenerComponent as object
global bOnNewFired as boolean

function sStartXEventListener(oComponent)
   if isNull(oXEventListener) then 'just to be shure it doesn't start twice
      oXEventListener=CreateUnoListener("XEventListener_", "com.sun.star.document.XEventListener")
      oComponent.com_sun_star_document_XEventBroadcaster_addEventListener(oXEventListener)
      oXEventListenerComponent = oComponent
   end if
   sStartXEventListener = True
end function
function sStopXEventListener
   if not isNull(oXEventListener) then 'only if still running
      oXEventListenerComponent.com_sun_star_document_XEventBroadcaster_removeEventListener(oXEventListener)
      oXEventListenerComponent=nothing
      oXEventListener=nothing 'To know later the listener has stopt.
   end if
   sStopXEventListener = True
end function
sub XEventListener_Disposing(oEvent)
   sStopXEventListener
end sub
sub XEventListener_notifyEvent(oEvent as object)
   if OEvent.EventName="OnNew" then
      bOnNewFired = True
   end if
end sub
' --------------------------------------------End XEventListener ------------------------------------------------------

'создание документа
Function LoadEmptyDocument(docType$)
  Dim noArgs()          'An empty array for the arguments
  Dim sURL As String    'URL of the document to load

  bOnNewFired = False

  sURL = "private:factory/" & docType
  LoadEmptyDocument = StarDesktop.LoadComponentFromUrl(sURL, "_blank", 0, noArgs())
  sStartXEventListener(LoadEmptyDocument)
 
  Do While (bOnNewFired = False)
    Wait(100)
  Loop
 
  sStopXEventListener
End Function
Записан

С уважением,
Михаил Каганский
JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #23: 29 Октябрь 2016, 16:11 »

Изящно. Лично меня
Код:
GlobalScope.BasicLibraries.LoadLibrary("Tools")
oNewDoc = CreateNewDocument("sdraw")
еще ни разу не подводил... Но я не так часто тестирую код под Ubuntu
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
spyAndrey
Участник
**
Offline Offline

Сообщений: 33


« Ответ #24: 29 Октябрь 2016, 21:47 »

Ага, и до кучи - "Самая последняя ошибка в программе всегда только предпоследняя"
Это я к тому, что wait 1000 - это всего одна секунда. И если в какой-то момент подгруженная Ubuntu не успеет создать draw за отведенное время - опять вылезет ошибка
я предполагаю что пользоваться буду только под KUbuntu, может в других дистрибутивах (с другими рабочими столами типа Gnome, Unity и т.д.) всё и без костыля (wait 1000) будт обходиться? но программу прикладываю Улыбка
Записан
spyAndrey
Участник
**
Offline Offline

Сообщений: 33


« Ответ #25: 29 Октябрь 2016, 21:51 »

в ней только исправил только логические ошибки (в каждой процедуре создавал рисунок) и вынес указатель на рисунок в первую строку:
Public oDrawDoc  'Temporary draw document.

но если удастся до делать, буду рад

* cgd-exp.odb (21.05 Кб - загружено 6 раз.)
Записан
spyAndrey
Участник
**
Offline Offline

Сообщений: 33


« Ответ #26: 29 Октябрь 2016, 21:55 »

сейчас честно говоря меня уже другой вопрос занимает, можно ли как нибудь управлять направляющими на рисунке?
Я у Питоньяка не видел примеров
Записан
JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #27: 29 Октябрь 2016, 22:30 »

направляющими? на рисунке? еще и управлять? Ты ведь не про размерные линии, а именно про направляющие? И ими управлять?..  Непонимающий
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
spyAndrey
Участник
**
Offline Offline

Сообщений: 33


« Ответ #28: 1 Ноябрь 2016, 08:49 »

Да, я имел в виду именно направляющие, к которым прилипание можно зделать для точной установки...
Размерные линии, я уже понял как рисовать (в смысле добавлять программно).

Я предположил, что может кто то пользовался Xray или библиотекой Питоньяка, может там есть доступ и функционал для работы с этими объектами?
Записан
rami
Гуру
*******
Offline Offline

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


iMac, LibreOffice и Apache OpenOffice


« Ответ #29: 1 Ноябрь 2016, 09:26 »

Да, я имел в виду именно направляющие, к которым прилипание можно зделать для точной установки...
Это уже новая тема или продолжение текущей Непонимающий Прилипание к направляющим действует (если включено) при ручной работе, в макросе нужно задавать все размеры и параметры.
Я предположил, что может кто то пользовался Xray или библиотекой Питоньяка, может там есть доступ и функционал для работы с этими объектами?
Направляющие — это не объект, а скорее визуальная помощь для пользователя.
Записан

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

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