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

Примитивная графика си++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нестандартные потоки в файле системы NTFS http://www.cyberforum.ru/cpp-beginners/thread578490.html
Здравствуйте, требуется привести пример (фрагмент) программы, проверяющей наличие нестандартных потоков в файле системы NTFS. Заранее благодарен.
C++ образуют ли Числа знакочередующуюся последовательность Здравствуйте, очень нужно написать программу на С++ (у меня visual studio C+ 2008) "Дано n вещественных чисел. Определить, образуют ли они знакочередующуюся последовательность. " буду очень признателен,если сможете помочь. Добавлено через 8 часов 8 минут завтра сдавать) хелп ми плз) http://www.cyberforum.ru/cpp-beginners/thread578484.html
Эйлеров цикл C++
Доброго времени суток :) Ни у кого не осталось Эйлерового цикла, исходник? Если у кого есть или знает принцип работы программы, не поленитесь киньте ответ.
C++ Что означают !=
Помогите разобраться, что означает знак !=
C++ Функций http://www.cyberforum.ru/cpp-beginners/thread578458.html
Написать программу, определяющую сумму n-значных чисел, содержащих только нечетные цифры. Определить также, сколько четных цифр в найденной сумме.
C++ на Экзамен-Многомерные массивы Дана вещественная матрица размерности n * m. Найти сумму всех ее отрицательных и произведение всех ее положительных элементов подробнее

Показать сообщение отдельно
Taftis
Pascal, Delphi, C++
 Аватар для Taftis
178 / 127 / 27
Регистрация: 01.12.2012
Сообщений: 626
24.04.2013, 06:56     Примитивная графика си++
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
#include <windows.h>
#include <math.h>
LRESULT CALLBACK  WndProc(HWND, UINT, WPARAM, LPARAM);
 
int  main(void) {
   MSG msg;
   int  use = CW_USEDEFAULT; 
   HWND  wnd = CreateWindowA("BUTTON", "Моё окно", WS_OVERLAPPEDWINDOW, use, use, use, use, 
                                           GetDesktopWindow(), NULL, (HINSTANCE)GetModuleHandle(NULL), NULL);
   if(! wnd)
         ExitProcess(1u);
 
   SetClassLong(wnd, GCL_HCURSOR, (LONG)LoadCursor(NULL, IDC_ARROW)); // курсор
   SetClassLong(wnd, GCL_HBRBACKGROUND, (LONG)GetStockObject(WHITE_BRUSH)); // цвет формы
   SetWindowLong(wnd, GWL_WNDPROC, (LONG)WndProc);  // обработчик сообщений
 
   ShowWindow(wnd, SW_SHOWDEFAULT);
   UpdateWindow(wnd);
   InvalidateRect(wnd, NULL, TRUE);
 
   ZeroMemory(&msg, sizeof(MSG));
   while(GetMessageA(&msg, NULL, 0U, 0U)) {
        DispatchMessageA(&msg);
        TranslateMessage(&msg);
   }
   DestroyWindow(wnd);
   return 0;
}
 
LRESULT CALLBACK  WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) {
   PAINTSTRUCT ps;
   HGDIOBJ old;
   int x, y, ny;
   static POINT pt;
   static HPEN  pen;
 
   switch(msg) {
     case WM_SHOWWINDOW:
          pen  = CreatePen(PS_SOLID, 1,  RGB(0, 0, 255));
          pt.x =  pt.y = 0L;
         break;
     case WM_PAINT:   // обработчик рисования на форме
         BeginPaint(hwnd, &ps);
 
        // рисуем график X,Y
        MoveToEx(ps.hdc, ps.rcPaint.right/2, 10, NULL);
        LineTo(ps.hdc, ps.rcPaint.right/2, ps.rcPaint.bottom-10);
 
        MoveToEx(ps.hdc, 10, ps.rcPaint.bottom/2, NULL);
        LineTo(ps.hdc, ps.rcPaint.right-10, ps.rcPaint.bottom/2);
 
        old = SelectObject(ps.hdc, pen);
        // рисуем синусуидальные-волны
        y = ps.rcPaint.bottom / 2;
        for(pt.y = y + 10, pt.x = 10, x = 11; x < ps.rcPaint.right - 10; x++) {
              ny = y + ps.rcPaint.bottom / 8 * sin(2 * 3.14 * x / (45*ps.rcPaint.right/180));
              MoveToEx(ps.hdc, pt.x, pt.y, NULL);
              LineTo(ps.hdc, x, ny);
              pt.x = x;
              pt.y = ny;
         }
         SelectObject(ps.hdc, old);
         EndPaint(hwnd, &ps);
         break;
     case WM_DESTROY:
          DeleteObject(pen);
          PostQuitMessage(0);
         break;
     default: return DefWindowProcA(hwnd, msg, wParam, lParam);
     }
     return 0;
}
 
Текущее время: 21:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru