Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ GRF & DEV CPP https://www.cyberforum.ru/ cpp/ thread336726.html
Доброго времени суток!Подскажите как в программе на Си/Си++ использовать графы созданные в программе GraphEdit???Нужно захапать поток с web камеры и обрабатывать отдельные кадры,при этом скорость...
Доступ к HDD C++
Подскажите пожалуйста, можно ли как нить узнать есть ли на жестком диске не размеченная область и получить к ней доступ? Ведь проги для работы с HDD видят, что есть не размеченная область.
C++ Делить на ноль нельзя?
Я в курсе, нельзя. Но это было бы полбеды. Проблема в том, что судя по всему, нельзя делить не только на ноль. Есть интересная задача и неинтересное #include <iostream> using namespace std; int...
C++ неявное преобразование в C++ Здравствуйте! При работе с проектом на Qt, компилятор выдал ошибку: "undefined reference to vtable". Порывшись в интернете, нашел статью, где рассказывается, что это все происходит из-за... https://www.cyberforum.ru/ cpp/ thread335329.html
C++ Критика архитектуры набора планов https://www.cyberforum.ru/ cpp/ thread335057.html
Требуется создать систему похожую на Hierarchical task network то есть некоторая библиотека планов и каждый план может содержать подпланы, получать результаты выполнения подпланов и передавать их...
Решение игры "вирус"? C++
В инете есть много флеш игр на тему вирусов. Поле поделено на квадраты из нескольких цветов и нужно всё заразить на наименьшее число ходов. Хочу потренироваться находить решения таких задач. Для...
Чекер удаленных серверов на ОС C++
Доброго времени суток. Я этот форум читаю уже достаточно давно, но все никак не приходилось здесь зарегистрироваться. Сейчас обращаюсь к вам с просьбой. Помогите написать программку, которая будет...
C++ Quest3D 4.2.3 Приветсвую всех!!! Люди мне нужна помощь. Никак не могу найти в сети Quest3D 4.2.3.точнее нашел но все ссылки либо платные либо не работают.если кто может дать мне работующюю ссылку буду очень... https://www.cyberforum.ru/ cpp/ thread331760.html
C++ Математика для программистов(НЕ АБСТРАКТНО) https://www.cyberforum.ru/ cpp/ thread331367.html
Уважаемые программисты! Какие книги рекамндуете по математике!
C++ Как сделать перезагрузку сайта с помощью таймера? ну во общем тут такое дело нужен код который будет отправлять запрос на сайт перезагружаться и опять оправлять запрос на сайт пример как тут webbrowser1.navigate(' '+edit1.text) webbrowser1.refresh ... https://www.cyberforum.ru/ cpp/ thread331352.html
59 / 56 / 8
Регистрация: 22.07.2011
Сообщений: 436
28.07.2011, 13:04  [ТС] 0

Можно ли рисовать в окне нажатием кнопки?

28.07.2011, 13:04. Просмотров 967. Ответов 4
Метки (Все метки)

Ответ

Вот:

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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#include <windows.h>
#define ID_BUTTON1 3000
 
BOOL RegClass(WNDPROC, LPCTSTR, UINT);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
 
HINSTANCE hInstance;
 
char szClass[] = "LcBotClass";
char szHpText[] = "Текст";
 
int WINAPI WinMain (HINSTANCE hInst,
                    HINSTANCE hPrevInstance,
                    LPSTR lpszCmdLine,
                    int nCmdShow)
 
{
    HWND hwnd;               
    MSG msg;            
    hInstance = hInst;
    hwndGlobal = hwnd;
    
    if(!RegClass(WndProc, szClass, COLOR_WINDOW)) return FALSE;
    
 
     hwnd = CreateWindow(
        szClass,
        "LC bot by SDmaN",
        WS_OVERLAPPEDWINDOW | WS_VISIBLE,
        CW_USEDEFAULT,
        CW_USEDEFAULT,
        640,
        480,
        0,
        0,
        hInstance,
        NULL
        );
        
     if(!hwnd) return FALSE;
     
     while(GetMessage(&msg, 0, 0, 0)) DispatchMessage(&msg);
     return msg.wParam;
     }
 
BOOL RegClass(WNDPROC Proc, LPCTSTR szName, UINT brBackground)
{
     WNDCLASS wc;
     wc.style = CS_HREDRAW | CS_VREDRAW;
     wc.cbClsExtra = wc.cbWndExtra = 0;
     wc.lpfnWndProc = Proc;
     wc.hInstance = hInstance;
     wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
     wc.hCursor = LoadCursor(NULL, IDC_ARROW);
     wc.hbrBackground = (HBRUSH)(brBackground + 1);
     wc.lpszMenuName = NULL;
     wc.lpszClassName = szName;
     return (RegisterClass(&wc)!= 0);
}
 
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
 char szHpText[] = "Êîëè÷åñòâî ÕÏ ïåðñîíàæà: ";
 char szMpText[] = "Êîëè÷åñòâî ÌÏ ïåðñîíàæà: ";
 static HWND hButton;
 switch(msg)
 {
 
    case WM_CREATE:
        {
         hButton = CreateWindow("button",
         "Ñòàðò",
         WS_CHILD | WS_VISIBLE,
         400,
         20,
         150,
         30,
         hwnd,
         (HMENU)ID_BUTTON1,
         hInstance,
         NULL
         );
        }
    
    case WM_PAINT:
        {
            PAINTSTRUCT ps;
            HDC hdc = BeginPaint(hwnd, &ps);
            SetTextColor(hdc, RGB(0, 0, 0));
            SetTextAlign(hdc, 0);
            TextOut(hdc, 20, 20, szHpText, strlen(szHpText));
            TextOut(hdc, 20, 50, szMpText, strlen(szMpText));
            EndPaint(hwnd,&ps);
            
            return 0;
        }
    case WM_COMMAND:
        {
        switch(LOWORD(wParam))
        {
         case ID_BUTTON1:
            {
             PAINTSTRUCT ps1;
            HDC hdc1 = BeginPaint(hwnd, &ps1);
            SetTextColor(hdc1, RGB(0, 0, 0));
            TextOut(hdc1, 60, 90, szHpText, strlen(szHpText));
            EndPaint(hwnd,&ps1);
            }
        }
        }    
             
       case WM_DESTROY:
     {
     PostQuitMessage(0);
     return 0;
     }
     }
return DefWindowProc(hwnd, msg, wParam, lParam);
}
И ещё вот нарыл в интернете:

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
#include <windows.h> 
 
 
 LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
 
char szProgName[]="Progname";
 char szText[]="";
 
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
 {
 
HWND hWnd; 
 MSG lpMsg; 
 WNDCLASS w;
 
 
 w.lpszClassName=szProgName;
 w.hInstance=hInstance;
 w.lpfnWndProc=WndProc;
 w.hCursor=LoadCursor(NULL, IDC_ARROW);
 w.hIcon=LoadIcon(NULL, IDI_APPLICATION); 
 w.lpszMenuName=0;
 w.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
 w.style=CS_HREDRAW|CS_VREDRAW;
 w.cbClsExtra=0;
 w.cbWndExtra=0;
 
 
 if(!RegisterClass(&w))
 return 0;
 
 
 hWnd=CreateWindow(szProgName, //Èìÿ ïðîãðàììû
 "Keyboard Code Viewer - 1.0", 
 WS_OVERLAPPEDWINDOW, 
 100, 
 100, 
 100, 
 80, 
 (HWND)NULL,
 (HMENU)NULL, 
 (HINSTANCE)hInstance, 
 (HINSTANCE)NULL); 
 
 
 ShowWindow(hWnd, nCmdShow);
 
 UpdateWindow(hWnd);
 
 
 
while(GetMessage(&lpMsg, NULL, 0, 0)) { 
 TranslateMessage(&lpMsg); 
 DispatchMessage(&lpMsg); 
 }
 return(lpMsg.wParam); 
 }
 
 
 LRESULT CALLBACK WndProc(HWND hWnd, UINT messg, 
 WPARAM wParam, LPARAM lParam)
 {
 HDC hdc;
 
 
 switch(messg)
 {
 
unsigned int key;
 
 
 case WM_KEYDOWN:
 key=wParam; 
 _itoa(key, szText, 10); 
 hdc=GetDC(hWnd); 
 TextOut(hdc, 10,10, szText, 2);
 break;
 
 
 case WM_DESTROY:
 PostQuitMessage(0);
 break;
 
default:
 return(DefWindowProc(hWnd, messg, wParam, lParam));
 }
 return 0;
 }
Принцып почти такой же как и у моей программы, только различие в том, что в последнем примере программа преобразует код нажатой клавиши в строку.

Вернуться к обсуждению:
Можно ли рисовать в окне нажатием кнопки?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.07.2011, 13:04

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как можно сохранить картинки в ресурсах, а потом выбирать их нажатием соответствующей кнопки
А не подскажите, как можно сохранить картинки в ресурсах, а потом выбирать их нажатием...

Как можно чтобы в диалогом окне были кнопки Yes и NO?
Добрый день! Может кто-то сталкивался с такой задачей: ' в диалогово окне вместо стандартных...

Как можно ловить нажатие кнопки Open в диалоговом окне xlDialogOpen?
Как можно ловить нажатие кнопки Open в диалоговом окне xlDialogOpen? На самом деле, мне нужно...

Нужно изменить доступность кнопки в одной форме нажатием кнопки в другой
Есть две формы. В первой есть кнопка &quot;which&quot; с enabled = false, во второй есть кнопка, нажатие...

Можно ли нажатием "кнопки" сделать некоторое количество копий листа "INVOICE"
Хотелось бы макрос так скажем в листе Алюминий буду добавлять данные, например новую строку добавил...

Рисовать в окне из другого потока
Добрый день, написал был код, все работало, но из-за сбоев электрики комп. отключился от сети и как...

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