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