Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 23.12.2014
Сообщений: 11
1

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

03.07.2016, 17:55. Показов 3276. Ответов 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)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.07.2016, 17:55
Ответы с готовыми решениями:

Ввод с клавиатуры и запись в файл, чтение из файла и запись в массив, вывод из массива на экран
1.Ввод с клавиатуры и запись в файл, чтение из файла и запись в массив, вывод из массива на экран...

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

Ввод текста с клавиатуры
Нужно ввести текст с клавиатуры и записать его в переменную до того как будет нажата клавиша ЕНТР....

Ввод текста с клавиатуры
Люди, помогите, только начал изучать java, но наткнулся на тему которую понять не могу(( ...

2
75 / 49 / 26
Регистрация: 22.02.2015
Сообщений: 306
03.07.2016, 18:36 2
Лучший ответ Сообщение было отмечено sikilior как решение

Решение

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
шКодер самоучка
2145 / 1856 / 907
Регистрация: 09.10.2013
Сообщений: 4,056
Записей в блоге: 7
03.07.2016, 18:43 3
sikilior, Думаю стоит попробовать SDL_TextInputEvent/SDL_TextEditingEvent
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.07.2016, 18:43

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

Ввод многострочного текста с клавиатуры
необходимо ввести текст,количество строк m вводится пользователем. я написала,что вот так...в...

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

Ввод с клавиатуры и запись в текстовый файл
Ввод с клавиатуры и запись в текстовый файл. Пусть переменные А и В получают следующие значения ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru