Вопрос: Как использовать элемент ComboBox | Добавлено: 23.05.08 17:55 |
Автор вопроса: ![]() |
Подскажите как использовать элемент ComboBox
Мне нужно чтобы при выборе из списка скажем дерево >> дерево шло присваевания к переменной определенного числа.. ------------------------- | элемент комбобокс | ------------------------- +дерево >> дерево 0.5 +дерево >> сталь 0.4 +сталь >> сталь 0.21 +медб >> медь 0.3 допустим выбрали из списка дерево >> дерево жмеем кнопку "результат", она делит, скажем число 100 на число которое зависит от того что мы выберим. Ну короче както так. Вообщем просто объясните синтаксис элемента combobox. Я ату ненайду негде толкового мануала |
Ответы | Всего ответов: 16 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 301212 Вопросов: 8 Ответов: 49 |
Web-сайт: Профиль | Цитата | #1 | Добавлено: 23.05.08 18:13 |
не дописал... кроме как присвоит еще нужно вывод сделать... например:
Бла бла бла между дерево >> дерево бла бла бла число бла бла надеюсь, что все понятно |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: adamis@list.ru Вопросов: 153 Ответов: 3632 |
Профиль | Цитата | #2 | Добавлено: 23.05.08 18:32 |
Ну надож таким ленивым быть а ?
Тут же на сайте полно примеров http://www.vbnet.ru/samples/showgroup.aspx?id=4 |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 301212 Вопросов: 8 Ответов: 49 |
Web-сайт: Профиль | Цитата | #3 | Добавлено: 23.05.08 22:15 |
я там смотрел уже... там сложные примеры для моего уровня. и к тамуже нет того что мне надо |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 24 Ответов: 363 |
Профиль | Цитата | #4 | Добавлено: 24.05.08 00:47 |
Private Sub Combo1_Click()
'выводим в текстбокс соответствующее выбранному, элементу значение Text1.Text = Val(Combo1.ItemData(Combo1.ListIndex)) End Sub Private Sub Form_Load() 'Добавляем элементы в комбобокс Combo1.AddItem "Stroka1", 0 Combo1.AddItem "Stroka2", 1 Combo1.AddItem "Stroka3", 2 'значение соответствующего элемента Combo1.ItemData(0) = "10" Combo1.ItemData(1) = "20" Combo1.ItemData(2) = "30" 'фокус 1 строке Combo1.ListIndex = 0 End Sub ЗЫ: Купи самоучитель. |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 301212 Вопросов: 8 Ответов: 49 |
Web-сайт: Профиль | Цитата | #5 | Добавлено: 24.05.08 11:37 |
ЗЫ: Купи самоучитель.
ЗЫ: Купи самоучитель. Купил уже, тока там нету конкретно того что мне надо. Dim x As Integer
Private Sub Combo1_Change() 'выводим в текстбокс соответствующее выбранному, элементу значение x = Val(Combo1.ItemData(Combo1.ListIndex)) End Sub Private Sub Form_Load() 'Добавляем элементы в комбобокс Combo1.AddItem "Stroka1", 0 Combo1.AddItem "Stroka2", 1 Combo1.AddItem "Stroka3", 2 'значение соответствующего элемента Combo1.ItemData(0) = "10" Combo1.ItemData(1) = "10" Combo1.ItemData(2) = "40" 'фокус 1 строке Combo1.ListIndex = 2 End Sub Private Sub Command1_Click() Text3.Text = Val(x) + Val(30) End Sub переменная x всегда ровна 0, или я чтото делаю не так |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 87 Ответов: 2795 |
Web-сайт: Профиль | Цитата | #6 | Добавлено: 24.05.08 12:28 |
Поменяй так: Combo1_Change() --> Combo1_Click() |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 301212 Вопросов: 8 Ответов: 49 |
Web-сайт: Профиль | Цитата | #7 | Добавлено: 24.05.08 13:12 |
Отдуши.. Лучший форум по VB. Сразу отвечают по теме а не типа "используй такуюто функцию"
Всем кто отвечал на мои нубовские вопросы огромный респект |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 13 Ответов: 45 |
Профиль | Цитата | #8 | Добавлено: 26.05.08 17:57 |
Combo1.ItemData(0) = "10" почему вместо 10 нельзя вписать числа начинающиеся на 0? вроде 0.1.
Программа жалуется на кривой синтаксис. |
Номер ответа: 9 Автор ответа: ![]() ![]() Вопросов: 5 Ответов: 100 |
Профиль | Цитата | #9 | Добавлено: 26.05.08 19:59 |
Набери "Combo1.ItemData" поставь открывающую скобку и увидишь что ItemData(Integer) as Long
Это значит что раработчики этого элемента для дополнительных данных предусмотрели тип данных Long. И правильно сделали. |
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 13 Ответов: 45 |
Профиль | Цитата | #10 | Добавлено: 26.05.08 20:11 |
И что нужно сделать для того чтобы присвоить 0.1?
Поменять типы для Combo1.ItemDat, если да, то как? |
Номер ответа: 11 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 87 Ответов: 2795 |
Web-сайт: Профиль | Цитата | #11 | Добавлено: 26.05.08 20:15 |
Нет, нужно просто записать 1, а при чтении делить на 10 |
Номер ответа: 12 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 13 Ответов: 45 |
Профиль | Цитата | #12 | Добавлено: 26.05.08 20:16 |
Так и сделал. Не удобна както |
Номер ответа: 13 Автор ответа: ![]() ![]() Вопросов: 5 Ответов: 100 |
Профиль | Цитата | #13 | Добавлено: 26.05.08 20:24 |
ItemData это не тэг для хранения чего-то "от балды". Long выбран из практических соображений, это удобно для указания на первичный ключ в базе данных, либо указатель на область памяти. |
Номер ответа: 14 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 13 Ответов: 45 |
Профиль | Цитата | #14 | Добавлено: 26.05.08 21:38 |
А как можно вывести в Label Stroka1 если Combo1.AddItem "Stroka1", 0 ? |
Номер ответа: 15 Автор ответа: ![]() ![]() Вопросов: 5 Ответов: 100 |
Профиль | Цитата | #15 | Добавлено: 26.05.08 21:58 |
Private Sub Combo1_Click()
Label1.Caption = Combo1.Text End Sub |
|