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

функция SetTimer и обработка события таймера - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Функция добавляющая к числу справа цифру http://www.cyberforum.ru/cpp-beginners/thread957522.html
Описать функцию AddRightDigit(D, K), добавляющую к целому положительному числу K справа цифру D (D – входной параметр целого типа, лежащий в диапазоне 0-9, K – параметр целого типа, являющийся одновременно входным и выходным). С помощью этой функции последовательно добавить к данному числу K справа данные цифры D1 и D2, выводя результат каждого добавления.
C++ С использованием функций! Найти сумму дробей Даны числители и знаменатели двух дробей. Найти сумму этих дробей. Результат представить в виде несократимой дроби. (Определить функцию для расчета наибольшего общего делителя двух натуральных чисел, используя алгоритм Евклида.) P.S. Помогите пожалуйста, а то у меня уже глаза слипаются ниче бошка не соображает. http://www.cyberforum.ru/cpp-beginners/thread957520.html
C++ Наибольшая сумма элементов матрицы
Сделав N шагов, пройтись по соседним ячейкам прямоугольной матрицы так, чтобы в итоге получилась наибольшая из всех возможных сумма. Стартуем в левом верхнем углу.
Hello world C: C++
Доброго времени суток! Собственно, начал изучать С++, пользуюсь VS2012 Почему этот код работает #include "stdafx.h" using namespace System;
C++ Нарушение прав доступа при записи в itoa http://www.cyberforum.ru/cpp-beginners/thread957514.html
Что неправильно с указателем? Почему-то itoa вылетает if(green && counter >= 0) { SetTextColor(hdc, RGB(0,255,0)); char* time = ""; itoa(counter, time, 10); TextOut(hdc, 260, 80, (LPCWSTR)time, 20); }
C++ borland c++ bgi создаем класс point и определяем компонентные функции класса #ifndef POINTCPP #define POINTCPP 1 #include <graphics.h> class point { protected: int x,y; public: point (int xi=0, int yi=0); подробнее

Показать сообщение отдельно
SummerRain
 Аватар для SummerRain
325 / 324 / 17
Регистрация: 16.12.2012
Сообщений: 544
19.09.2013, 13:11     функция SetTimer и обработка события таймера
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    static int cxClient, cyClient;
    static int counter = 10;  // важно объявить эту переменную static или глобальной!!!
    bool green = true;
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;
    HBRUSH hBrush;
    LOGFONT lf;
    HFONT hFont;
    SetTimer(hWnd, 1, 1000, NULL);
    
    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_TIMER:
            {
            counter--;
            SendMessage(hWnd, WM_PAINT, 0, 0);
            hFont = CreateFontIndirect(&lf);
            hdc=GetDC(hWnd);
            SelectObject(hdc, hFont);
                      //  ...
            if(green && counter >= 0)
            {
                SetTextColor(hdc, RGB(0,255,0));
                char time[3];
                itoa(counter, time, 10);
                wchar_t wtext[3];
                mbstowcs(wtext, time, strlen(time)+1);
                TextOut(hdc, 260, 80, wtext, 2);
            }
 
                      //  ...             
            hBrush = CreateSolidBrush(RGB(255,0,0));
            SelectObject(hdc, hBrush);
            Ellipse(hdc, cyClient/5, cyClient/5, cyClient/5+80, cyClient/5+80); 
            hBrush = CreateSolidBrush(RGB(255,255,255));
            SelectObject(hdc, hBrush);
            Ellipse(hdc, cyClient/5, cyClient/5+90, cyClient/5+80, cyClient/5+170);
            Ellipse(hdc, cyClient/5, cyClient/5+180, cyClient/5+80, cyClient/5+260);
            hBrush = CreateSolidBrush(RGB(80,255,0));
            SelectObject(hdc, hBrush);
            Ellipse(hdc, 3*cyClient/5, cyClient/5+90, 3*cyClient/5+80, cyClient/5+170);
            hBrush = CreateSolidBrush(RGB(255,255,255));
            SelectObject(hdc, hBrush);
            Ellipse(hdc, 3*cyClient/5, cyClient/5+180, 3*cyClient/5+80, cyClient/5+260);
            
 
            hBrush = CreateSolidBrush(RGB(255,0,0));
            SelectObject(hdc, hBrush);
            Ellipse(hdc, cyClient/5, cyClient/5, cyClient/5+80, cyClient/5+80); 
 
            ReleaseDC(hWnd,hdc);
            break;
 
            case WM_SIZE:
            cxClient = LOWORD(lParam);
            cyClient = HIWORD(lParam);
            break;
                }
 
            // 
 
            case WM_DESTROY:
            PostQuitMessage(0);
            KillTimer(hWnd,1);
            break;
 
            default:
            return DefWindowProc(hWnd, message, wParam, lParam);
    }
    return 0;
}
 
Текущее время: 09:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru