У меня возникла проблема с элементом управления ListBox OpenOffice.org. Я создал небольшую форму (не диалог), которая содержит текстовое поле и ListBox и 2 кнопки.Как программно добавлять или удалять элементы в элементе управления ListBox FORM
Sub AddToList_ButtonClicked()
Dim oThisDoc As Object
Dim oForms as Object
Dim oForm as Object
oThisDoc = thisComponent.getDrawPage()
oForms = oThisDoc.getForms()
oForm = oForms.getByName("SimpleForm")
Dim oTextBox As Object
Dim oListBox As Object
oListBox = oForm.getByName("simpleListBox")
oTextBox = oForm.getByName("simpleTextBox").Text
oListBox.stringitemlist() = Array("One", "Two", "Three") '<--- Only possible way to add items to the ListBox Form Control :(
End Sub
Sub RemoveFromList_ButtonClicked()
Dim oThisDoc As Object
Dim oForms as Object
Dim oForm as Object
oThisDoc = thisComponent.getDrawPage()
oForms = oThisDoc.getForms()
oForm = oForms.getByName("SimpleForm")
Dim oListBox As Object
oListBox = oForm.getByName("simpleListBox")
oListBox.stringitemlist() '<--- contains array of items
oListBox.SelectedItems '<--- contains items selected for removal
End Sub
Я бы полностью оценить любое решение этой проблемы !.
Похоже, что файл Word - это ваша форма - это правильно? Подключен ли к нему базовый файл? Как вы нашли, содержимое массива listbox неудобно; на самом деле проще работать, если форма связана с базовым файлом, а содержимое списка определяется строкой SQL. Если есть базовое соединение, вероятно, было бы лучше иметь список элементов в таблице Base, пометить их как указано в пользовательском входе формы, затем 'oListBox.refresh', чтобы он отображал обновленный список. Если вы хотите это только в Word - кажется, ваш код работает, что именно возникает? – Lyrl