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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ksusha2010
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 2
#1

Приложение позволяет изменять цвет прямоугольника, увеличивая или уменьшая составляющие цвета.почему неработает программа? - C++

17.10.2013, 09:18. Просмотров 393. Ответов 1
Метки нет (Все метки)

2.2 Работа с кнопками и цветом
Приложение позволяет изменять цвет прямоугольника, увеличивая или уменьшая составляющие цвета.
Задание
1. При каждом изменении цвета выводить значения его составляющих.
2. Вывод осуществлять в элемент управления Static.
3. Вывод осуществлять в элемент редактирования Edit.
4. Вывод осуществлять при помощи функции TextOut.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.10.2013, 09:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Приложение позволяет изменять цвет прямоугольника, увеличивая или уменьшая составляющие цвета.почему неработает программа? (C++):

Приложение для игры в монополию. Сохраняет имена игроков и их баланс в структуру. Позволяет изменять баланс - C++
Дальше функции menu() дело не уходит. В чем ошибка? // Приложение должно считывать, выводить имя и баланс игрока в монополии, изменять...

Почему форма не позволяет изменять и добавлять данные - MS Access
Есть форма для ввода данных, созданная с помощью Мастера форм. Но почему-то она ни изменять, ни добавлять новые записи не позволяет....

какая программа позволяет изменять облик страницы и сводит к минимуму число нужных знаний.... ? - Web
Здравствуйте, у меня проблема... у меня есть сайт, я там типа администратор. В мои обязанности входит обновление сайта. мне показали...

Разработать приложение, обладающее возможностью плавно изменять цвет формы - C#
Разработать приложение, обладающее возможностью плавно изменять цвет формы при перемещении указателя мыши по формк: (a) левая границы...

разработать приложение, обладающие возможность плавно изменять цвет фона при перемеще - Delphi
1.разработать приложение, обладающие возможность плавно изменять цвет фона при перемещение указателя мыши по форме: (a)левая граница...

При выборе из списка цвета и атрибута шрифта изменять цвет и различные атрибуты шрифта надписи - Delphi
Создайте приложение, в котором при выборе из списка соответствующего цвета и атрибута шрифта изменяются соответственно цвет и различные...

1
ksusha2010
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 2
17.10.2013, 09:21  [ТС] #2
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
#include <windows.h>
 
#define ID_Red1 1
#define ID_Red2 2
#define ID_Green1 3
#define ID_Green2 4
#define ID_Blue1 5
#define ID_Blue2 6
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
   HWND hWnd, hRed1, hRed2, hGreen1,hGreen2,hBlue1,hBlue2 ;
   hInst = hInstance; // Сохранить дескриптор экземпляра в глобальной //переменной
   hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
    200, 200, 500, 320, NULL, NULL, hInstance, NULL);
   hRed1 = CreateWindow("button", "красный +",     WS_CHILD | WS_VISIBLE ,
    20, 20, 180, 30, hWnd, (HMENU) ID_Red1, hInstance, NULL);
   hRed2 = CreateWindow("button", "красный -",     WS_CHILD | WS_VISIBLE ,
    20, 60, 180, 30, hWnd, (HMENU) ID_Red2, hInstance, NULL);
   hGreen1 = CreateWindow("button", "зеленый +",     WS_CHILD | WS_VISIBLE ,
    20, 100, 180, 30, hWnd, (HMENU) ID_Green1, hInstance, NULL);
   hGreen2 = CreateWindow("button", "зеленый -",     WS_CHILD | WS_VISIBLE ,
    20, 140, 180, 30, hWnd, (HMENU) ID_Green2, hInstance, NULL);
   hBlue1 = CreateWindow("button", "синий +",     WS_CHILD | WS_VISIBLE ,
    20, 180, 180, 30, hWnd, (HMENU) ID_Blue1, hInstance, NULL);
   hBlue2= CreateWindow("button", "синий -",     WS_CHILD | WS_VISIBLE ,
    20, 220, 180, 30, hWnd, (HMENU) ID_Blue2, hInstance, NULL);
 
   if (!hWnd)
   {
      return FALSE;
   }
 
   ShowWindow(hWnd, nCmdShow);
   UpdateWindow(hWnd);
 
   return TRUE;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;
 
    static short Red=255,Green=255,Blue=255;// составляющие цвета
      static COLORREF mycolor=RGB(Red,Green,Blue);//текущий цвет
    HBRUSH hBr;//кисть
    RECT Rect;//прямоугольник для окрашивания
    Rect.left=250;
    Rect.top=60;
    Rect.right=440;
    Rect.bottom=205;
 
    switch (message)
    {
    case WM_COMMAND:
        wmId    = LOWORD(wParam);
        wmEvent = HIWORD(wParam);
        // Разобрать выбор в меню или сообщение от дочернего окна
        switch (wmId)
    {     case ID_Red1: Red+=5;if(Red>255)Red=255;
            break;
        case ID_Red2: Red-=5;if(Red<0)Red=0;
            break;
          case ID_Green1: Green+=5;if(Green>255)Green=255;
            break;
        case ID_Green2: Green-=5;if(Green<0)Green=0;
            break;
        case ID_Blue1: Blue+=5;if(Blue>255)Blue=255;
            break;
        case ID_Blue2: Blue-=5;if(Blue<0)Blue=0;
            break;
        case IDM_ABOUT:
            DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
            break;
        case IDM_EXIT:
            DestroyWindow(hWnd);
            break;
        }
    // создадим цвет
       mycolor=RGB(Red,Green,Blue);
    // помечаем область, соответствующую прямоугольнику, требующей обновления
     InvalidateRect(hWnd,&Rect,TRUE);
       UpdateWindow(hWnd);
    break;
 
 
    case WM_PAINT:
//получаем контекст для рисования
        hdc = BeginPaint(hWnd, &ps);
//создаем сплошную кисть нужного цвета
        hBr=CreateSolidBrush(mycolor);
//окрашиваем прямоугольник Rect кистью hBr
        FillRect(hdc,&Rect,hBr);
//создаем сплошную кисть черного цвета
        hBr=CreateSolidBrush(RGB(0,0,0));
//рисуем рамку вокруг прямоугольника
          FrameRect(hdc,&Rect,hBr);
//заканчиваем рисовать
        EndPaint(hWnd, &ps);
        break;
 
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hWnd, message, wParam, lParam);
    }
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.10.2013, 09:21
Привет! Вот еще темы с ответами:

Разработать приложение, обладающее возможностью плавно изменять цвет фона при перемещении указателя мыши по форме - Delphi
Разработать приложение, обладающее возможностью плавно изменять цвет фона при перемещении указателя мыши по форме: левая граница - красный...

Почему в Windows 10 цвет окон всех браузеров — серый, несмотря на настройку цвета фона? - Windows 10
Почему в windows 10 цвет окна браузеров(всех) серый? цвет фона меняю,а окно браузера при открытии вверху всегда серое.Можно как то это...

Какая программа позволяет создать файл с кодом ассемблера расширения .exe или .com? - Assembler
у меня все программы создают файлы с расширением .asm.

программа вычерчивающая на экране монитора окружность заданного радиуса и цвета,радиус и цвет с клавиатуры - Assembler
Есть программа ,надеюсь правильно написана,нужно добавить лишь ввод цвета и радиуса окружности с клавиатуры. суть программы :Написать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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