Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ WinAPI Приложение. Круговая диаграмма Выводится окно с круговой диаграммой, которая разделена на секторы разных цветов (выбираются с помощью генератора случайных чисел). При изменении размера окна цвета меняются. Задание: сделать так, чтобы при нажатии левой кнопки мыши вся диаграмма становилась красного цвета, а при нажатии правой кнопки все возвращалось обратно #include <windows.h>//Файл заголовков для Windows-приложения... https://www.cyberforum.ru/ win-api/ thread167662.html Работа с браузером C++ WinAPI
Здравствуйте! Подскажите пожалуйста как сделать программно клик на ссылке в браузере. WM_LBUTTONDOWN, WM_LBUTTONDBLCLK - реакция на эти сообщения есть, клик вроде осуществляется, но перехода по ссылке нет. Как быть чтоб был переход
C++ WinAPI Многопоточный поиск простых чисел (WinAPI) https://www.cyberforum.ru/ win-api/ thread167447.html
помогите с задачкой..только начал изучать C++ и работу с потоками.. задача заключается в следующем--> -->Поиск простых чисел. Поток ищет простые числа (начиная с заданного), главный процесс следит за прогрессом и выдает текущие значения. кто что может посоветовать?
C++ WinAPI Второе окно не дает доступ к первому WinApi Первое окно. Кликаем на нем кнопку. Так что вылетает второе окно. Причем так, что к первому нету никакого доступа. Ни мышкой ни клавиатурой. Как для первого окна определить, что для него открыто второе окно и соответственно нету никакого доступа к первому? пробовал IsWindowEnabled(Handle) . Эта функция в моем случае всегда возвращает true независимо от того открыто ли второе окно. https://www.cyberforum.ru/ win-api/ thread167206.html
Вопрос насчет использования длл в кейлогере C++ WinAPI
Хочу сделать так , что бы кейлогер представлял из себя 1 exe-шник. В чем смысл использования длл ,почему допустим не потоки?ведь на сколько я понимаю длл используется в данном случае, для того, что бы "разгрузить" основную программу. Если нельзя отказаться от использования длл, то как ее вживить в exe ? Пример кейлогера :...
C++ WinAPI WinAPI Rebar Toolbar Bug Доброго времени суток. Столкнулся с проблемой при использовании тулбара. При одновременном нажатии левой и правой кнопками мыши на любой из кнопок тулбара кнопка залипает, а также главное окно программы перестаёт отвечать (в WndProc никакие сообщения не приходят). Если убрать фокус с окна (кликнув, например, на рабочем столе), то окно снова начинает принимать сообщения и всё работает. ... https://www.cyberforum.ru/ win-api/ thread166832.html
C++ WinAPI Посоветуйте наиболее полную книгу по Win API Посоветуйте наиболее полную книгу по Win API https://www.cyberforum.ru/ win-api/ thread166736.html C++ WinAPI Нарисовать текст поверх всех окон
Как можно нарисовать текст поверх всех окон. К примеру что бы текст рисовался и при просмотре видео и во время игр
C++ WinAPI сабклассинг Добрый день!Я решил изучить сабклассинг и столкнулся с проблемой...Сделал окно, а на нем кнопка (банально и просто), потом заменяю стандартную функцию обработки и обрабатываю нажатие, но ничего не происходит...Что я сделал не так?.. Вот код программы: #include <windows.h> ///////////////////////////////////////////////////// LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); LRESULT... https://www.cyberforum.ru/ win-api/ thread166628.html C++ WinAPI Фиксация выхода ПК из "ждущего режима" https://www.cyberforum.ru/ win-api/ thread165451.html
Здравствуйте все! Подскажите, есть ли возможность такой проверки в приложении? Дело в том, что у меня проложение работает с подключенным оборудованием по USB и вот без этого оборудования из ждущего режима нормально выходит/продолжает работать, а с ним - зависает. Видимо, при выходе из ждущего режима, устройство не успевает пройти ренумерацию и пр. по шине USB и программа виснет. Это и видно в...
C++ WinAPI Перехват API, Рихтер
Всем доброго времени суток! Собственно такой вопросик... я вот читаю сейчас Рихтера и мне интересен его перехват. Захотелось проделать то же что и он но только с recv() & send(). Поначалу вроде всё спокойно... потом смотрю ну траффик вижу, а вот почему то программы как будто "умирают". То есть параметры которые ловит хук нормальные. Но адрес оригинальной ф-ции нулевой. Собственно оно и не может...
C++ WinAPI Несколько вопросов по WinApi https://www.cyberforum.ru/ win-api/ thread165337.html
1) Как создать окно развернутое на весь экран? 2) Как получить разрешение экрана? 3) Как изменить положение и размер уже созданного окна?
5 / 5 / 1
Регистрация: 23.11.2009
Сообщений: 608
0

Отображение и масштабирование картинки в окне программы - C++ WinAPI - Ответ 973494

21.09.2010, 18:42. Показов 4543. Ответов 8
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
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
120
121
122
#include <windows.h>
 
/*  Declare Windows procedure  */
LRESULT CALLBACK DCDemoWndProc (HWND, UINT, UINT, LONG);
 
/*  WINAPI - îïðåäåëÿåò ïîðÿäîê ïåðåäà÷è ïàðàìåòðîâ ïðè âûçîâå ïðîöåäóðû  */
int WINAPI WinMain (HINSTANCE hThisInstance, //Õýíäë ýêçåìïëÿðà ïðîãðàììû
                    HINSTANCE hPrevInstance, //Æýíäë ïðåäûäóùåãî ýêçåìïëÿðà ïðîãðàììû
                    LPSTR lpszCmdParam,
                    int nCmdShow) //Âèä îêíà
 
{
    HWND hWnd;               /* This is the handle for our window */
    MSG Msg;            /* Here messages to the application are saved */
    WNDCLASS WndClass;        /* Data structure for the windowclass */
    char szClassName[ ] = "DCDemo";
 
    /* The Window structure */
    WndClass.style = CS_HREDRAW | CS_VREDRAW;      /* Ïåðåðèñîâêà îêíà ïðè èçìåíåíèè âûñîòû è øèðèíû îêíà */
    WndClass.lpfnWndProc = DCDemoWndProc;      /* This function is called by windows */
    WndClass.cbClsExtra = 0;                      /* No extra bytes after the window class */
    WndClass.cbWndExtra = 0;                      /* structure or the window instance */
    WndClass.hInstance = hThisInstance;
    WndClass.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    WndClass.hCursor = LoadCursor (NULL, IDC_ARROW);
    WndClass.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
    WndClass.lpszMenuName = "MyMenu";                 /* No menu */
    WndClass.lpszClassName = szClassName;
 
    /* Use default icon and mouse-pointer */
    /* Use Windows's default color as the background of the window */
 
    /* Register the window class, and if it fails quit the program */
    if (!RegisterClass(&WndClass))
    {
        MessageBox(NULL, "Cannot register class", "Error", MB_OK);
        return 0;
    }
    /* The class is registered, let's create the program*/
    hWnd = CreateWindow (
           szClassName,         /* Classname */
           "Programm 1",       /* Title Text */
           WS_OVERLAPPEDWINDOW, /* default window */
           CW_USEDEFAULT,       /* Windows decides the position */
           CW_USEDEFAULT,       /* where the window ends up on the screen */
           CW_USEDEFAULT,
           CW_USEDEFAULT,
           NULL,        /* The window is a child-window to desktop */
           NULL,                /* No menu */
           hThisInstance,       /* Program Instance handler */
           NULL                 /* No Window Creation data */
           );
    
    if (!hWnd)
    {
        MessageBox(NULL, "Cannot create window", "Error", MB_OK);
        return 0;
    }
    
    /* Make the window visible on the screen */
    ShowWindow (hWnd, nCmdShow);
    UpdateWindow(hWnd);
    /* Run the message loop. It will run until GetMessage() returns 0 */
    while (GetMessage(&Msg, NULL, 0, 0))
    {
        /* Translate virtual-key messages into character messages */
        TranslateMessage(&Msg);
        /* Send message to WindowProcedure */
        DispatchMessage(&Msg);
    }
 
    /* The program return-value is 0 - The value that PostQuitMessage() gave */
    return Msg.wParam;
}
 
 
/*  This function is called by the Windows function DispatchMessage()  */
 
LRESULT CALLBACK DCDemoWndProc(HWND hWnd, UINT Message, UINT wParam, LONG lParam)
{
    HDC hDC, hCompatibleDC;
    PAINTSTRUCT PaintStruct;
    HANDLE hBitmap, hOldBitmap;
    RECT Rect;
    BITMAP Bitmap;
    switch (Message)                  /* handle the messages */
    {
        case WM_PAINT:
            //Ïîëó÷àåì êîíòåêñò óñòðîéñòâà.
            hDC = BeginPaint(hWnd,&PaintStruct);
            //Çàãðóæàåì bitmap, êîòîðûé áóäåò îòîáðàæàòüñÿ â îêíåá èç ôàéëà.
            hBitmap = LoadImage(NULL, "SOUNDMAX.BMP",
            IMAGE_BITMAP,
            0, 0,
            LR_LOADFROMFILE);
            //Ïîëó÷àåì ðàçìåðíîñòü çàãðóæåííîãî bitmap'a.
            GetObject(hBitmap, sizeof(BITMAP), &Bitmap);
            //Ñîçäà¸ì ñîâìåñòèìûé ñ êîíòåêñòîì îêíà êîíòåêñò â ïàìÿòè.
            hCompatibleDC = CreateCompatibleDC(hDC);
            //Äåëàåì çàãðóæåííûé èç ôàéëà bitmap òåêóùèì â ñîâìåñòèìîì êîíòåêñòå.
            hOldBitmap = SelectObject(hCompatibleDC, hBitmap);
            //Îïðåäåëÿåì ðàçìåð ðàáî÷åé îáëàñòè îêà.
            GetClientRect(hWnd,&Rect);
            //Êîïèðóåì bitmap ñ ñîâìåñòèìîãî íà îñíîâíîé êîíòåêñò ñ ìàñøòàáèðîâàíèåì.
            StretchBlt(hDC, 0, 0, Rect.right, Rect.bottom,
            hCompatibleDC, 0, 0,  Bitmap.bmWidth,
            Bitmap.bmHeight, SRCCOPY);
            //Âíîâü äåëàåì ñòàðûé bitmap òåêóùèì.
            SelectObject(hCompatibleDC, hOldBitmap);
            //Óäàëÿåì çàãðóæåííûé ñ äèñêà bitmap.
            DeleteObject(hBitmap);
            //Óäàëÿåì ñîâìåñòèìûé êîíòåêñò/
            DeleteDC(hCompatibleDC);
            EndPaint(hWnd,&PaintStruct);
            return 0;
        case WM_DESTROY:
            PostQuitMessage (0);       /* send a WM_QUIT to the message queue */
            return 0;
    }
 
    return DefWindowProc (hWnd, Message, wParam, lParam);
}
Программа успешно компилируется и запускается, но вместо картинки отображается белый фон.
Мне кажетс. что надо исправить 94 строчку, только не знаю как.
C++
1
hBitmap = LoadImage(NULL, "SOUNDMAX.BMP",
Добавлено через 23 минуты
И ещё поясните. какая директория доступна через переменную окружения РАТН?

Вернуться к обсуждению:
Отображение и масштабирование картинки в окне программы C++ WinAPI
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.09.2010, 18:42
Готовые ответы и решения:

Отображение картинки на кнопку в новом окне
Добрый день, есть некая программа с таким интерфейсом. скриншот Хочется чтобы выделенная часть...

Отображение картинки в другом окне при нажатии на image
Добрый всем день! Подскажите пожалуйста, как можно реализовать открытие картинки в новом окошке,...

Отображение процента выполнения программы в отдельном окне
Интересует такой вопрос... Лень для визуального отображения процесса выполнения подпрограммы...

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

8
21.09.2010, 18:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.09.2010, 18:42
Помогаю со студенческими работами здесь

Масштабирование картинки
Как сделать чтобы пользователю можно было картинку увеличивать и уменьшать...?

Масштабирование картинки
Добрый день, помогите пожалуйста решить проблему. Определяю размер экрана и пытаюсь подогнать...

Масштабирование картинки
помогите пожалуйста!! мне нужна функция масштабирования картинки. почти весь Интернет перерыла,...

Масштабирование картинки
На кнопку программно помещается картинка(любых размеров). Эта кнопка поддерживает возможность...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru