Enum element from string |
Здравствуйте, гость ( Вход | Регистрация )
Enum element from string |
ruzik |
23.5.2011, 16:07
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: 0 |
Здравствуйте, не подскажите как поступить в данной ситуации
У меня есть enum QCompleter::CompletionMode и есть выбранный элемент из этого enum, например PopupCompletion и как конвертировать этот PopupCompletion в QCompleter::PopupCompletion, что бы его можно было использовать в нужных местах, и есть для этого какие-нибудь готовые классы и тп P.S. элемент с if сразу отпадает тк слишком долго, а таких элементов у меня не мало |
|
|
Алексей1153 |
23.5.2011, 18:51
Сообщение
#2
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
вот, что ты описал:
непонятно, зачем конвертировать, когда PopupCompletion и так уже является членом-константой класса QCompleter? Для чего это, что хочешь добиться в итоге - расскажи |
|
|
ruzik |
23.5.2011, 19:03
Сообщение
#3
|
Активный участник Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: 0 |
Я сделал так что бы пользователь сам выбирал CompletionMode в comboBoxe и сохраняю его выбор с помощью QSettings, но как вы понял сохраняется только название выбранного метода, то есть PopupCompletion, а при загрузки программы я хочу что бы она работала как указал пользователь, для этого мне нужен не строка PopupCompletion а именно сам элемент QCompleter::PopupCompletion
|
|
|
Алексей1153 |
23.5.2011, 19:16
Сообщение
#4
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
ruzik, преобразуй в int и всего то и делов.
|
|
|
ruzik |
23.5.2011, 19:58
Сообщение
#5
|
Активный участник Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: 0 |
Если у меня есть иднекс например 1 как выбрать 1 элемент из enum'a
|
|
|
Алексей1153 |
24.5.2011, 6:51
Сообщение
#6
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
ruzik, я не телепат, извини. Описывай ТЗ подетальнее
|
|
|
ruzik |
24.5.2011, 11:36
Сообщение
#7
|
Активный участник Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: 0 |
Есть enum QCompleter::CompletionMode там есть 3 элемента, как сделать так что бы если у меня есть индекс нужного элемента я мог получить его, то есть есть 1, я получаю QCompleter::InlineCompletion
|
|
|
Алексей1153 |
24.5.2011, 11:43
Сообщение
#8
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
попробуй применить ассоциативный контейнер - QMap или std::map
за ключ возьми индекс , за значение значение - QCompleter::InlineCompletion но всё равно непонятно, зачем это всё. Поясню свою мысль:
заполняем комбобокс 1 элемент) строка="flag1" , данные=int(QCompleter::flag1) 2 элемент) строка="flag2" , данные=int(QCompleter::flag2) 3 элемент) строка="flag3" , данные=int(QCompleter::flag3) пользователь выбирает элемент 2. Достаём данные, это у нас 1 QCompleter::CompletionMode result=QCompleter::CompletionMode(1); |
|
|
ruzik |
24.5.2011, 12:48
Сообщение
#9
|
Активный участник Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: 0 |
Спасибо!
|
|
|
Текстовая версия | Сейчас: 26.12.2024, 20:13 |