Первая (и последняя) программа для Windows
Добавлено: 03.03.2015 06:48
Для Windows существуют миллионы программ, но нет одной, которую я ищу уже долго и которую, видимо, придётся написать самому. Программа эта - простой калькулятор с RPN. Не онлайн (!), не Ява в браузере (!) и вообще безо всякого браузера и HTML, не программа в ABAP4, а нормальный 64-битный (!) Windows PE файл.
Задумка такая. В неизменном по размеру окне нет никаких кнопок, как в обычных калькуляторах, потому что ввод осуществляется только с клавиатуры. Есть несколько строчек, отображающих содержимое соответствующего количества первых регистров сопроцессора или SSE. Верхней строчке соответствует верхний регистр. Туда же производится ввод чисел.
Допустимые клавиши и их действия:
0-9, а также максимально одна запятая - отображение набранного символа в верхней строчке со сдвигом воображаемого "курсора";
Backspace - стирание последнего символа в строке, если там вообще есть символы;
Enter - считывание набранного числа и запись его в верхний регистр с одновременным сдвигом всего стека вниз с последующим обновлением отображения списка регистров;
+-/* - считывание набранного числа и выполнение арифметической операции между двумя верхними регистрами с последующим обновлением отображения списка регистров;
Esc - принудительное обновление отображения списка регистров, набранные символы в верхней строчке, естественно, пропадают.
Это весь калькулятор. Для удобства чтения верхняя строчка выводится на белом фоне, остальные - на сером.
Вопрос: какие функции API для этого понадобятся? Список длинный, а мне почти 50 лет, учиться на программиста, чтобы написать одну-единственную программу, влом. Нужно считывать допустимые символы с клавиатуры, выводить их на экран, а также выводить на экран содержимое регистров. Больше, вроде бы, ничего.
Задумка такая. В неизменном по размеру окне нет никаких кнопок, как в обычных калькуляторах, потому что ввод осуществляется только с клавиатуры. Есть несколько строчек, отображающих содержимое соответствующего количества первых регистров сопроцессора или SSE. Верхней строчке соответствует верхний регистр. Туда же производится ввод чисел.
Допустимые клавиши и их действия:
0-9, а также максимально одна запятая - отображение набранного символа в верхней строчке со сдвигом воображаемого "курсора";
Backspace - стирание последнего символа в строке, если там вообще есть символы;
Enter - считывание набранного числа и запись его в верхний регистр с одновременным сдвигом всего стека вниз с последующим обновлением отображения списка регистров;
+-/* - считывание набранного числа и выполнение арифметической операции между двумя верхними регистрами с последующим обновлением отображения списка регистров;
Esc - принудительное обновление отображения списка регистров, набранные символы в верхней строчке, естественно, пропадают.
Это весь калькулятор. Для удобства чтения верхняя строчка выводится на белом фоне, остальные - на сером.
Вопрос: какие функции API для этого понадобятся? Список длинный, а мне почти 50 лет, учиться на программиста, чтобы написать одну-единственную программу, влом. Нужно считывать допустимые символы с клавиатуры, выводить их на экран, а также выводить на экран содержимое регистров. Больше, вроде бы, ничего.