Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.03.2012, 02:17   #1
titan2012
Пользователь
 
Аватар для titan2012
 
Регистрация: 07.02.2012
Сообщений: 95
Вопрос combo box

здрасте всем, не сочтите меня глупым, просто я програмер не крутой и по душе больше html и css чем visual C++

так вот, все таки взялся за это дело и тут такая проблема, есть combo box, в него ввожу названия твердых материалов
Код HTML:
BOOL CStoksDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	 m_cbComboBox.AddString("Алюминий");

     m_cbComboBox.AddString("Железо, сталь");
 
     m_cbComboBox.AddString("Бетон");

	 m_cbComboBox.AddString("Гранит");
 
     m_cbComboBox.AddString("Золото");
 
     m_cbComboBox.AddString("Кирпич");

	 m_cbComboBox.AddString("Латунь");
 
     m_cbComboBox.AddString("Лёд");
 
     m_cbComboBox.AddString("Бетон");

	 m_cbComboBox.AddString("Медь");
типа такого, дальше нужно к каждому этому названию прилипить соответствующее значение, типа выбираю "Алюминий" и передается ее значение например 5 кг

вот как это сделать? подскажите кто-то!
Заранее спасибо
Изображения
Тип файла: jpg Изображение 009.jpg (75.5 Кб, 123 просмотров)

Последний раз редактировалось titan2012; 01.03.2012 в 02:26.
titan2012 вне форума Ответить с цитированием
Старый 01.03.2012, 10:07   #2
microbit
Форумчанин
 
Аватар для microbit
 
Регистрация: 26.09.2011
Сообщений: 176
По умолчанию

в сомбо-бокс можно прилепить dword значение или указатель на объект

Код:
m_cbComboBox.AddString("Алюминий");
m_cbComboBox.SetItemData(0,2);
m_cbComboBox.AddString("Железо, сталь");
m_cbComboBox.SetItemData(1,5);
и т.д.

извлекать

Код:
int a;
a = (int) m_cbComboBox.GetItemData(m_cbComboBox.GetCurSel());
microbit вне форума Ответить с цитированием
Старый 01.03.2012, 21:22   #3
titan2012
Пользователь
 
Аватар для titan2012
 
Регистрация: 07.02.2012
Сообщений: 95
По умолчанию

у меня получается что к числу 0,1 мне нужно прибавить а, а оно у меня int и результат получается 0,1 + 5 = 5,1

а как мне сделать чтобы а было не int ? чтобы я мог задавать в него например 0,5, чтобы в результате было 0,1 + 0,5 = 0,6 ?
titan2012 вне форума Ответить с цитированием
Старый 02.03.2012, 05:48   #4
microbit
Форумчанин
 
Аватар для microbit
 
Регистрация: 26.09.2011
Сообщений: 176
По умолчанию

создай массив со значениями, а в combobox храни индекс в этом массиве.

Код:
double g_array[] = {1.56,2.6,6.7};
Код:
m_cbComboBox.AddString("Алюминий");
m_cbComboBox.SetItemData(0,0);
m_cbComboBox.AddString("Железо, сталь");
m_cbComboBox.SetItemData(1,1);
Код:
int a;
double b;
a = combo.GetItemData(combo.GetCurSel());
b = g_array[a];
это элементарные вещи
microbit вне форума Ответить с цитированием
Старый 02.03.2012, 06:26   #5
titan2012
Пользователь
 
Аватар для titan2012
 
Регистрация: 07.02.2012
Сообщений: 95
Хорошо

спасибо за ответ) очень помог)
titan2012 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
List Box Ekzamenator Помощь студентам 3 26.09.2011 21:32
проблема с заполением многозначная (combo box) Александр__ Microsoft Office Access 2 01.06.2010 06:18
Check box ruavia3 Microsoft Office Excel 6 17.11.2009 13:31
List box help Ghennadiy Win Api 3 16.09.2009 22:33
Combo ruavia3 Microsoft Office Access 5 22.08.2009 00:05