Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sikilior
0 / 0 / 0
Регистрация: 23.12.2014
Сообщений: 11
#1

SDL ввод текста с клавиатуры и запись в массив - C++

03.07.2016, 17:55. Просмотров 320. Ответов 2
Метки нет (Все метки)

Мой код внизу он неправильный, но работает text[1]="a",text[2]="b" , text[3]="c" и так весь алфавит посимвольно.
Часть кода:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
char text[100];
int countr=0;
  if(Event->type == SDL_KEYDOWN)//Если нажата клавиша
      {
            if (Event->key.keysym.sym == SDLK_a)
            {
                             text[countr]='a';countr++;
                        }
            if (Event->key.keysym.sym == SDLK_b)
            {
                             text[countr]='b';countr++;
                        }
            if (Event->key.keysym.sym == SDLK_c)
            {
                             text[countr]='c';countr++;
                        }
       }
Нужно не писать кучу строк под каждый символ а считать по юникоду вот так:
C++ (Qt)
1
2
3
4
5
6
7
8
9
char text[100];
int countr=0;
if(Event->type == SDL_KEYDOWN )
{
        
        if( (Event->key.keysym.unicode >= (Uint16)'a' ) && (Event->key.keysym.unicode <= (Uint16)'z' ) )
        {
            text[countr] += (char)Event->key.keysym.unicode;countr++;
        }
Вариант кода "распознать символ по юникоду" и скопировать его в text не работает жму нечего не происходит! Помогите! как правильно сделать ввод с клавиатуры в SDL по юникоду!
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.07.2016, 17:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос SDL ввод текста с клавиатуры и запись в массив (C++):

Массив(сумма, макс. число), ввод текста с клавиатуры и сохранение в *.txt - C++
Написать программу, которая формирует массив 5x5 и вычисляет сумму элементов массива, и наибольшую величину массива с указанием строки и...

Ввод с клавиатуры русского текста - C++
Привет форум. Сел писать програмку на С++ и встретился с проблемой. Вот собственно задание &quot;C клавиатуры посимвольно вводится фраза....

Ввод с клавиатуры данных и запись их в структуру - C++
Помогите,пожалуйста. Нужно добавить запись с информацией о студенте и его баллах за каждый вопрос.(каждый вопрос выводится на экран) ...

Запись в матрицу по спирали (ввод чисел с клавиатуры) - C++
Нужно ввести n чисел с клавиатуры они записываются в матрицу по спирали из центра (не важно против часовой или по часовой) и если кол-во...

Шифр цезаря, ввод текста с клавиатуры, вывод в файл - C++
Здравствуйте, возникла проблема - Задали мне задание и дали срок 4 месяца, я благополучно как смог написал программу за недею, но в...

Ввод с клавиатуры в массив - C++
Не знаю как сделать, чтобы с клавиатуры я вводил цифры и они сразу записывались в массив.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DUMP
57 / 31 / 7
Регистрация: 22.02.2015
Сообщений: 261
03.07.2016, 18:36 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
sikilior,

C++
1
2
3
4
5
6
7
8
9
10
11
12
const Uint8 *Keys = NULL;
Keys = SDL_GetKeyboardState(NULL);
 
//if(Keys[SDL_SCANCODE_A]) { /*for example*/ }
 
char symbol;
for(int i = 0; i < 26; i++)
    if(Keys[4+i]) //Key[4] = 'A';
    {
        symbol = i+65;
        break;
    };
1
Max Dark
шКодер самоучка
1825 / 1627 / 592
Регистрация: 09.10.2013
Сообщений: 3,634
Записей в блоге: 6
Завершенные тесты: 2
03.07.2016, 18:43 #3
sikilior, Думаю стоит попробовать SDL_TextInputEvent/SDL_TextEditingEvent
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.07.2016, 18:43
Привет! Вот еще темы с ответами:

Ввод с клавиатуры данных в массив - C++
Написать программу выполняющую след. действия: -ввод с клавиатуры данных в массив состоящий из 10-ти структур типа Worker( с...

Ввод с клавиатуры данных в массив - C++
Нужна помощь, 1)Определить класс с именем AEROFLOT, содержащий след поля: название пункта назначения рейса; номер рейса; тип...

Ввод данных в массив с клавиатуры - C++
Ребят помогите.Нужен код , который бы заполнял массив с клавиатуры 3х4 . Вот код ввода данных с клавиатуры vvodcifri // ввод...

Организовать ввод слов с клавиатуры в массив - C++
Как организовать ввод слов с клавиатуры в массив таким образом, что-бы каждое слово помещалось в новую строку? Подскажите пожалуйста.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru