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

Рисование в окне - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Метод простой итерации http://www.cyberforum.ru/cpp-beginners/thread210976.html
Решить систему методом простой итерации. 2^x + sin(x) = 0abs(x) - 2y = 0 Трудность возникает в преобразовании системы к виду, неободимого для этого метода. Если кто делал похожее задание,...
C++ Строки Уважаемые программисты форума! Пожалуйста помогите решить задачу на тему Строки... Вот задание: Заданы 2 строки, состоящие из слов разделенных пробелами. Приписать второе слово второй строки и... http://www.cyberforum.ru/cpp-beginners/thread210964.html
C++ Получить новую матрицу путём сложения всех элементов заданной матрицы (язык C)
Получить новую матрицу S(N,M) путём сложения всех элементов заданной матрицы C(N,M) с её наибольшим по модулю элементом. тип элементов - целые, N = 6, M = 4 , элементы от -18 до 18. это всё...
Числа в диапазоне [0..1] C++
Здраствуйте... мне нада генератор чисел (си/си++) в диапазоне 0..1, например, 0 0.01 0.76
C++ Поменять местами max элемент главной и побочной диагоналей с элементом, стоящим на их пересечении http://www.cyberforum.ru/cpp-beginners/thread210945.html
Здравствуйте, помогите пожалуйста написать программу! В квадратной матрице А поменять местами максимальный элемент главной и побочной диагоналей с элементом, стоящим на пересечении этих диагоналей.
C++ Исследовать область определения функций и построить их графики РАБОТА С ГРАФИКОЙ ВОТ ЗАДАЧА: Исследовать область определения функций и построить их графики для произвольных значений параметров на заданном интервале. (Интервал и параметры задаются... подробнее

Показать сообщение отдельно
Алена5
2 / 2 / 0
Регистрация: 17.05.2010
Сообщений: 68

Рисование в окне - C++

14.12.2010, 18:39. Просмотров 412. Ответов 0
Метки (Все метки)

Написала програмку
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
#include<windows.h>
#include<tchar.h>
static int x=0, y=0;
HINSTANCE hI;
int Flag;
LRESULT CALLBACK WndProc(HWND hWnd, UINT mess, WPARAM wP, LPARAM lP);
INT CALLBACK WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR lpCmdline, int nCmdShow)
{
    hI=hInst;
    WNDCLASSEX wc;
    wc.cbSize = sizeof(WNDCLASSEX);
    wc.style = CS_HREDRAW | CS_VREDRAW;
    wc.lpfnWndProc = WndProc;
    wc.cbClsExtra = 0;
    wc.cbWndExtra = 0;
    wc.hInstance = hInst;
    wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
    wc.hCursor = LoadCursor(NULL, IDC_ARROW);
    wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
    wc.lpszMenuName = NULL;
    wc.lpszClassName = _TEXT("Клас1");
    wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
    if(!RegisterClassEx(&wc))
        MessageBox(NULL, _TEXT("no class has been registered"),_TEXT("cdfv"), NULL);
    HWND hWnd;
    hWnd = CreateWindowEx(0, _TEXT("Клас1"), _TEXT("Окно"), WS_OVERLAPPEDWINDOW, 10, 10, 500, 300, NULL, NULL, hInst, NULL);
    ShowWindow(hWnd, nCmdShow);
    MSG msg;
    while(GetMessage(&msg, NULL, 0, 0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    return msg.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT mess, WPARAM wP, LPARAM lP)
{
    PAINTSTRUCT ps;
    RECT rect;
    HBRUSH hBrush;
    HPEN hPen;
    HFONT hFont;
    HDC hdc;
    switch(mess)
    {
    case WM_DESTROY: {PostQuitMessage(0); break;}
    case WM_PAINT: {
        hdc=BeginPaint(hWnd,&ps);
        Ellipse(hdc,x,y,x+100,y+100);
        EndPaint(hWnd,&ps);
        break;
                   }
    case WM_LBUTTONDOWN:
        {
            x=LOWORD(lP);
            y=HIWORD(lP);
            InvalidateRect(hWnd,0,1);
            break;
 
        }
    default: return DefWindowProc(hWnd, mess, wP, lP);
    }
    return 0;
}
но при нажатии левой кнопки мыши InvalidateRect(hWnd,0,1) - перерисовывает все окно вместе с эллипсом, а мне надо чтобы эллипс дорисовывался в определенной точке окна.
Подскажите пожалуйста нужную функцию.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru