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

Что такое "эхо печать"? И как через такую печать сделать калькулятор? - C++

Восстановить пароль Регистрация
 
Darkness190
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 131
30.09.2015, 19:03     Что такое "эхо печать"? И как через такую печать сделать калькулятор? #1
Само задание такое: Создать программу-калькулятор, обеспечивающую ввод с клавиатуры в режиме эхо-печати только цифр, а также обработку нажатия клавиш +, -, *,/ с помощью акселераторов.
Я не пойму фразу "ввод с клавиатуры в режиме эхо-печати". Что она означает? Гугл упорно суёт мне PHP. Но мне надо сделать на C++ (Win API).
Что такое эхо-печать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.09.2015, 19:03     Что такое "эхо печать"? И как через такую печать сделать калькулятор?
Посмотрите здесь:

C++ Что такое "bool " и #include <algorithm>? Кто знает , как они работают ?
C++ Расположить элементы массива, лежащие до первого символа "к", в порядке, обратном алфавитному, и вывести на печать отсортирванный массив данных
как сделать , что бы при вводе слова "Minsk" у меня выполнялось действие? C++
Как сделать чтобы при нажатии на кнопку "PlayWarcraft" заходил на мой сервер через IP adress C++
Дана строка. На печать выдать слова, имеющие больше одной буквы "е" C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Людвиг Бодмер
 Аватар для Людвиг Бодмер
212 / 209 / 70
Регистрация: 29.03.2013
Сообщений: 555
Завершенные тесты: 2
01.10.2015, 09:08     Что такое "эхо печать"? И как через такую печать сделать калькулятор? #2
Darkness190, насколько я понимаю, ввод с клавиатуры в режиме эхо-печати цифр, означает, что введенные цифры будут сразу выводиться на экран калькулятора. Т.е. как на обычном калькуляторе, жмешь цифры - они появляются на экране, жмешь клавиши +, -, *,/, = - они не отображаются на экране.
Darkness190
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 131
01.10.2015, 19:19  [ТС]     Что такое "эхо печать"? И как через такую печать сделать калькулятор? #3
Людвиг Бодмер, Допустим, я эхо-печать сделал:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include "stdafx.h"
#include "Win32Project4.h"
#include <xstring> 
typedef std::basic_string<TCHAR, std::char_traits<TCHAR>, std::allocator<TCHAR> > String;
 
.............
 
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;
    static String str; 
    
    switch (message)
    {
    case WM_COMMAND:
        wmId    = LOWORD(wParam);
        wmEvent = HIWORD(wParam);
        // Разобрать выбор в меню:
        switch (wmId)
        {
        case IDM_ABOUT:
            DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
            break;
        case IDM_EXIT:
            DestroyWindow(hWnd);
            break;
        default:
            return DefWindowProc(hWnd, message, wParam, lParam);
        }
        break;
    
    case WM_CHAR:       //эхо-печать
        str += (TCHAR)wParam; 
        InvalidateRect(hWnd, NULL, TRUE); 
        break;
    
    case WM_PAINT:
        hdc = BeginPaint(hWnd, &ps);
        TextOut(hdc, 0, 0, str.data(), str.size()); 
        EndPaint(hWnd, &ps);
        
        break;
    
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hWnd, message, wParam, lParam);
    }
    return 0;
}
Но я ума не приложу как можно в таком виде складывать или умножать 2 числа! Через EDIT всё понятно. Присвоил, допустим, "а" это число введённое в EDIT1, a "b" число в EDIT2, нажал на кнопку, сложил с=а+b, и в EDIT3 вывел "с"
Но тут ни числа не удаляются, ни на другую строчку не перевести, и не только цифры но и буквы вводятся. И идентификатор числу не присвоить!!! И инфы в гугле нет нифига!...
Людвиг Бодмер
 Аватар для Людвиг Бодмер
212 / 209 / 70
Регистрация: 29.03.2013
Сообщений: 555
Завершенные тесты: 2
02.10.2015, 13:36     Что такое "эхо печать"? И как через такую печать сделать калькулятор? #4
Darkness190, предлагаю попросить модератора перенести тему в раздел "С++ WinApi" и дать более осмысленное название или создать там новую тему самому. Надо определиться с интерфейсом программы и логикой работы. Может окно типа CEdit создавать и туда выводить введенные с клавиатуры символы. Я так понимаю надо будет фильтровать ввод и акселераторы еще привязать правильно.
Про акселераторы можно здесь почитать: http://www.cyberguru.ru/programming/...shortcuts.html
Yandex
Объявления
02.10.2015, 13:36     Что такое "эхо печать"? И как через такую печать сделать калькулятор?
Ответ Создать тему
Опции темы

Текущее время: 00:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru