powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Добрый день, уважаемые. Прошу помощи в разработке скрипта для LibreOffice Calc
2 сообщений из 2, страница 1 из 1
Добрый день, уважаемые. Прошу помощи в разработке скрипта для LibreOffice Calc
    #39568757
roman-info01
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые форумчане, такая стоит задача:
а) требуется отслеживать перемещение по ячейкам в листе
б) загрузить картинку в компонент "Графический элемент управления"

Мне нужно, когда пользователь перемещается по ячейкам:
1) вернуть текущую строку
2) получить данные из столбца "C" и строки, на которой сейчас стоит курсор - путь к картинке (проверить, что он есть)
3) загрузить эту картинку в "Графический элемент управления" - он у меня называется Image1

проблема не в синтаксисе Basic-а (немного программировать умею), а именно в организации перехватов событий и.т.д

по первому пункту накопал рабочий код:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Sub AddChartDataListener()
    oCell1 = ThisComponent.getSheets().getByIndex(0).getCellRangeByName("A5:A6")
    oListener = CreateUnoListener("MyApp_", "com.sun.star.chart.XChartDataChangeEventListener")
    oCell1.addChartDataChangeEventListener(oListener)
End Sub

Sub MyApp_chartDataChanged(oEvent)
    dCell = ThisComponent.getSheets().getByIndex(0).GetCellByPosition(1,1)
    MsgBox dCell.String 'dCell.Value
    
End Sub


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

может кто поделится кодом?
или ссылками

Спасибо всем
...
Рейтинг: 0 / 0
Добрый день, уважаемые. Прошу помощи в разработке скрипта для LibreOffice Calc
    #39568785
roman-info01
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел код, который позволяет перехватывать нажатие кнопок.
Код рабочий:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
Option Explicit
Global oDocView
Global oKeyHandler
Sub RegisterKeyHandler
	oDocView = ThisComponent.getCurrentController
	oKeyHandler = _
	createUnoListener("MyApp_", "com.sun.star.awt.XKeyHandler")
					'
					writedbginfo oKeyHandler
					oDocView.addKeyHandler(oKeyHandler)
End Sub

Sub UnregisterKeyHandler
	oDocView.removeKeyHandler(oKeyHandler)
End Sub

Sub MyApp_disposing(oEvt)
	' здесь ничего не делается
End Sub

Function MyApp_KeyPressed(oEvt) As Boolean
	select case oEvt.KeyChar
	case "t", "a", "b", "u"
	MyApp_KeyPressed = True
	msgbox " клавиша """ & oEvt.KeyChar & """ не разрешена !"
	case else
	MyApp_KeyPressed = False
	end select
End Function

Function MyApp_KeyReleased(oEvt) As Boolean
	MyApp_KeyReleased = False
End Function



Теперь следующая задача - получить текст ячейки из текущей строки и столбца "C"
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Добрый день, уважаемые. Прошу помощи в разработке скрипта для LibreOffice Calc
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]