Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: ListBox Добавлено: 12.11.04 15:49  

Автор вопроса:  someone | Web-сайт: 123
звиняюсь за ламерский вопрос, просто с List мало работал.
необходимо:


Допустим есть 2 листбокса

"Текст1" | "ЕщеТекст1"
"Текст2" | "ЕщеТекст2"
"Текст3" | "ЕщеТекст3"

и при выборе "Текст1" должно выбратся во втором значение "ЕщеТекст1" Ну и с остальными тоже.




---------

Private Sub List1_Click()
List2.(сделать активным елемент >>>) = List1.(определить номер элемента в List1)
Print List2.(выбранный елемент)
End Sub




помогите! плиз!

Ответить

  Ответы Всего ответов: 12  

Номер ответа: 1
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #1 Добавлено: 12.11.04 17:12

Private Sub List1_Click()
List2.ListIndex = List1.ListIndex
Print List2.(выбранный елемент)
End Sub



Только это не надежно...
Лучше сабклассить :) Но дольше :)

Ответить

Номер ответа: 2
Автор ответа:
 Pashenko



ICQ: 176176951 

Вопросов: 14
Ответов: 655
 Профиль | | #2 Добавлено: 12.11.04 17:15
Почему не надёжно?

Кстати, советую ещё и вот это (для красоты):

List2.TopIndex = List1.TopIndex

Ответить

Номер ответа: 3
Автор ответа:
 someone



Вопросов: 215
Ответов: 1596
 Web-сайт: 123
 Профиль | | #3
Добавлено: 12.11.04 17:24
СПАСИБО!!!!!!

Ответить

Номер ответа: 4
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #4 Добавлено: 12.11.04 19:02
Почему ненадежно?
С выбранной задачей конечно справляется (событие Click), но если с клавиатуры выбирать или просто с нажатой клавишей мыши
пробежаться по строчкам, то эффекта никакого не будет
Т. ч. либо довольствуйтесь этим, либо ко всем нужным событиям списка привязать это действие, либо сабклассингом отслеживать
изменения в одном списке и устанавливать выбранный индекс во втором списке (и наоборот)

Ответить

Номер ответа: 5
Автор ответа:
 Barsik



Разработчик Offline Client

ICQ: 343368641 

Вопросов: 17
Ответов: 686
 Web-сайт: barsik.newmail.ru
 Профиль | | #5
Добавлено: 13.11.04 12:22
проше предусмотреть нажатия на клавишу Ентер и Пробел... и нинужно ниче сабклассить...

Ответить

Номер ответа: 6
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #6 Добавлено: 13.11.04 12:57
Угу
А еще ВВЕРХ, ВНИЗ, HOME, END, PAGEUP, PAGEDOWN
Плюс MouseMove, MouseClick, Scroll
И притом эти события нужно ставить и на втором списке, дабы они были полностью синхронизированы :)
Вот теберь про сабклассинг вопрос стал спорным? :)
Там то наверняка есть константа "индекс_изменился", плюс функции GetScrollPos и SetScrollPos

Ответить

Номер ответа: 7
Автор ответа:
 night-roll



Вопросов: 36
Ответов: 326
 Профиль | | #7 Добавлено: 13.11.04 15:56
может прроще прописать новое событие Change

Ответить

Номер ответа: 8
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #8 Добавлено: 13.11.04 18:20
Хмм... а как это сделать?

Ответить

Номер ответа: 9
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #9
Добавлено: 13.11.04 18:31

 Вот теберь про сабклассинг вопрос стал спорным? :)

 Ты так говоришь как будто при субклассинге это всё не надо обрабатывать. Лучше использовать события контрола. Если что-то в контроле не предусмотрено разработчиками, тогда ПРИХОДИТСЯ прибегать к субклассингу. Если всё писать на API, то и VB не нужен. Собственно что ты предлагаешь субклассировать? Покажи хоть часть кода.

Ответить

Номер ответа: 10
Автор ответа:
 someone



Вопросов: 215
Ответов: 1596
 Web-сайт: 123
 Профиль | | #10
Добавлено: 13.11.04 19:34
может прроще прописать новое событие Change
Хмм... а как это сделать?


ну просто задавать ListIndex...
да, кстати, а что собой представляет TopIndex
у меня неработает. т.е. ноль еффекта

Ответить

Номер ответа: 11
Автор ответа:
 someone



Вопросов: 215
Ответов: 1596
 Web-сайт: 123
 Профиль | | #11
Добавлено: 13.11.04 19:35
сорри, не вчитался
новое событие

ну тут надо свой List делать наверно! :)

Ответить

Номер ответа: 12
Автор ответа:
 Pashenko



ICQ: 176176951 

Вопросов: 14
Ответов: 655
 Профиль | | #12 Добавлено: 15.11.04 11:33
да, кстати, а что собой представляет TopIndex
у меня неработает. т.е. ноль еффекта

Сделай список побольше, чтобы скроллер появился и побегай по нему...

TopIndex - индекс первой видимой строки списка.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам