Как выделить строку в ListBox

Автор Борис_С, 21 августа 2024, 16:15

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

Борис_С

Всем доброго дня.

Мне нужно выделить строку в ListBox с помощью мыши.
Определил метод, в который я попадаю при нажатии левой клавиши мыши в строке ListBox.
Как получить номер строки, на которую я нажимаю?
Спасибо.

Борис_С

Я правильно понимаю, что поскольку метры не отвечают, такой возможности нет в ЛО?

mikekaganski

Скорее, недостаточно данных, и никто не хочет проделывать 100% работы, которую Вы уже проделали, с нуля. Скажем, почему бы Вам не приложить документ с макросом и формой (или этот ListBox в диалоге?) и "определённым методом". И в нём был бы комментарий типа "как здесь получить номер выделенной строки".
С уважением,
Михаил Каганский

Борис_С

В программе динамически заполняю ListBox из диалога. На событие Нажатие кнопки мыши в ListBox вешаю макрос normacs.lib.OnClickMouseListBox (application, Basic)
Вот этот макрос:
Sub OnClickMouseListBox(oEvent As com.sun.star.awt.TextEvent)
    Dim cbSelectDocumentApply, cbSelectDocumentApplyAll
    cbSelectDocumentApply = propDlg.GetControl("cbSelectDocumentApply")
    cbSelectDocumentApplyAll = propDlg.GetControl("cbSelectDocumentApplyAll")
    cbSelectDocumentApply.enable = true 
    cbSelectDocumentApplyAll.enable = true
End Sub
cbSelectDocumentApply и cbSelectDocumentApplyAll - кнопки, которые делаю активными при нажатии мышью на ListBox. Пока это все.

bigor

Цитата: mikekaganski от 23 августа 2024, 12:11почему бы Вам не приложить документ с макросом и формой
Поддержать наш форум можно здесь

Борис_С

А что это даст? Как динамически заполнить ListBox, наверное, знает каждый. Макрос я приложил. Вопрос в том как из входного параметра макроса получить номер строки, на которую я нажимаю.

mikekaganski

Цитата: Борис_С от 23 августа 2024, 12:44А что это даст?
Возможно, это даст ответ. Никогда не понимал спрашивающих, которые начинают доказывать, что помогающим не нужны те данные, которые они просят.

Вот скажем я. Я не помню наизусть то, что Вы спрашиваете. Поэтому мне понадобилось бы посмотреть в работе, чтобы либо вспомнить, либо понять, где в исходном коде посмотреть ответ. И я даже готов потратить какое-то (собственное!) время, чтобы помочь человеку, который не знает этого. Но не безграничное время. Взять готовый файл и на нём посмотреть - это да. А делать всё самому - извините, ищите ответ дальше сами.
С уважением,
Михаил Каганский

Борис_С

Я сделал тестовый пример. Я не большой специалист в ЛО. Как я могу его передать?

bigor

В окне Быстрый ответ жмём Просмотр, появится надпись болдом, типа Перетащите файлы сюда ... далее все понятно
Поддержать наш форум можно здесь

Борис_С

Я сделал тестовый пример в разделе Standard.Test. Как получить из этого файлы?

mikekaganski

1. Создайте документ Writer.
2. В нём создайте нужные макросы.
3. В нём создайте нужные объекты, которые эти макросы обрабатывают.
4. Сохраните этот документ, содержащий макросы, как файл ODT.
5. Прикрепите его к сообщению на форуме, как указано в #8.
С уважением,
Михаил Каганский

Борис_С


Борис_С

А как привязать готовый макрос к документу?

mikekaganski

Создайте библиотеку в файле, и просто скопируйте макросы туда.
С уважением,
Михаил Каганский

Борис_С

Библиотеку я создал. А как скопировать туда нужные модули и диалоги я не понял.