Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ WinAPI Программа на WinApi висит после закрытия в Диспетчере После запуска приложения в VS приходится останавливать даже после закрытия. Решил попробовать запустить приложение из проводника заметил, что в Диспетчере висят столько же незакрытых одноименных процессов. Приходится закрывать вручную. А это не сеть хорошо... Помогите, в чем дело? Я новичек! А поиск по Инету не помог... #include <Windows.h> //Проототип функции окна LRESULT CALLBACK... https://www.cyberforum.ru/ win-api/ thread1326944.html C++ WinAPI Радиокнопки в ГруппБоксе
Как перебрать все радиокнопки в данном ГруппБоксе?
C++ WinAPI Перерисовка контрола static В общем ситуация же как и у этого человека http://stackoverflow.com/questions/1823883/updating-text-in-a-c-win32-api-static-control-drawn-with-ws-ex-transparent создаю статик с прозрачным фоном, в котором при перересовке текст не вытерается а накладывается друг на друга case WM_CTLCOLORSTATIC: SetBkMode ((HDC)wParam, TRANSPARENT); return (LRESULT)GetStockObject (NULL_BRUSH);далее как... https://www.cyberforum.ru/ win-api/ thread1326844.html C++ WinAPI Нужно получить дескриптор окна имея дескриптор контрола https://www.cyberforum.ru/ win-api/ thread1326739.html
Нужно получить дескриптор окна имея дескриптор контрола, подскажите как
DataGrid на Win32 C++ WinAPI
Привет всем нашёл компонент Datagrid написанный на WIN32 он работает но у него нет одной функции не могли бы вы добавить так ка плохо знаю WIN32, нужно добавить такую функцию чтоб происходил автоматический скролинг таблицы ну допустим на 10 позиции, или хотя бы при добавлении одной строки происходил скролинг на одну позицию
C++ WinAPI Как узнать, есть ли цифровая подпись майкрософт https://www.cyberforum.ru/ win-api/ thread1326561.html
Нужно узнать есть ли у приложения цифровая подпись майкрософт, подскажите как? в гугле есть инфа тоько о том как её поставить((
C++ WinAPI Лабораторные работы помогите с лабами пожалуйста WinAPI 1)(ПРИЛОЖЕНИЯ WINDOWS С ИСПОЛЬЗОВАНИЕМ WIN 32 API)/Написать программу, которая создает окно с собственными курсором и иконкой. В главное меню добавить подменю с двумя пунктами Start и Stop. При нажатии на пункт меню Start в окне должна появиться движущаяся по середине окна надпись. После этого выбор пункта меню Stop должно приостанавливать движение... https://www.cyberforum.ru/ win-api/ thread1326238.html C++ WinAPI Атрибуты файлов
Перепробовал много вариантов..как-то не доходит..как правильно описать атрибуты для: Папка, с возможным атрибутом "только для чтения", не скрытая. if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY ...... ) а дальше не знаю как.. уже все символы перепробовал и == и & и && и | и ||... не получается вывести все папки..выводит или всё или часть или ничего. и ещё..подскажите в...
C++ WinAPI MouseWheel, как определить, крутится ли колесико на мышке? https://www.cyberforum.ru/ win-api/ thread1325817.html
Добрый день. Как определить крутится ли колесико на мышке. И как крутится , вверх или вниз ? Спасибо.
C++ WinAPI Передача файла сервер-клиент у меня есть код, который передает файлы из клиента на сервер, помогите переделать так чтобы сервер передавал файл, а клиент принимал! вот код для клиента, который передает файл: DWORD WINAPI NetworkThread_f(LPVOID) { //EnterCriticalSection(&cs); WSADATA wsaData; int result = WSAStartup(MAKEWORD(2, 2), &wsaData); https://www.cyberforum.ru/ win-api/ thread1325784.html
C++ WinAPI Проверить подключено ли устройство к USB
Как это осуществить, нашел парочку кодов в интернете, но ничего нормально не работает, все с ошибками
C++ WinAPI String is not null terminated в функции wcscat_s https://www.cyberforum.ru/ win-api/ thread1325017.html
Здравствуйте. Я считываю файл строками через getline. Данные ложу в переменную fileStr (тип char). После этого делаю: MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, fileStr, 299, str, 299); str имеет тип wchar_t.
35 / 17 / 10
Регистрация: 13.12.2014
Сообщений: 107
15.12.2014, 14:31 0

Create an in memory bitmap and draw directly to the memory - C++ WinAPI - Ответ 6989787

15.12.2014, 14:31. Показов 4640. Ответов 10
Метки (Все метки)

Ответ

Pro100Tom, Я делаю так:
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
RECT gclientrect;
HDC gnewdc;
HBITMAP gnewbitmap;
int* gpnewbitmap;
 
void ResizeBitmap()
{
    if ((gnewdc != NULL) && (gclientrect.right != 0) && (gclientrect.bottom != 0))
    {
        BITMAPINFO lbitmapinfo;
        lbitmapinfo.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
        lbitmapinfo.bmiHeader.biWidth = gclientrect.right;
        lbitmapinfo.bmiHeader.biHeight = -gclientrect.bottom;
        lbitmapinfo.bmiHeader.biPlanes = 1;
        lbitmapinfo.bmiHeader.biBitCount = 32;
        lbitmapinfo.bmiHeader.biCompression = BI_RGB;
        lbitmapinfo.bmiHeader.biSizeImage = gclientrect.right * gclientrect.bottom * 4;
        lbitmapinfo.bmiHeader.biClrUsed = 0;
        lbitmapinfo.bmiHeader.biClrImportant = 0;
        if (gnewbitmap != NULL) DeleteObject(gnewbitmap);
        gnewbitmap = CreateDIBSection(gnewdc, &lbitmapinfo, DIB_RGB_COLORS, (void**)&gpnewbitmap, NULL, NULL);
        SelectObject(gnewdc, gnewbitmap);
    };
};
 
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;
 
    switch (message) 
    {
    case WM_SIZE:
        {
            GetClientRect(hWnd, &gclientrect);
            ResizeBitmap();
            break;
        };
    case WM_CREATE:
        {
            if (gnewdc == NULL)
            {
                HDC lhdc = GetDC(hWnd);
                gnewdc = CreateCompatibleDC(lhdc);
                ReleaseDC(hWnd, lhdc);
            };
            break;
        };
    case WM_ERASEBKGND:
        return 1;
    case WM_PAINT:
        hdc = BeginPaint(hWnd, &ps);
 
        if (gnewdc == NULL) gnewdc = CreateCompatibleDC(hdc);
 
        BitBlt(hdc,0,0,gclientrect.right,gclientrect.bottom,gnewdc,0,0,SRCCOPY);
        // TODO: Add any drawing code here...
        EndPaint(hWnd, &ps);
        break;
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hWnd, message, wParam, lParam);
    }
    return 0;
}
то есть создаю совместимый контекст, создаю битмап с помощью CreateDIBSection, далее можно работать с массивом пикселей через указатель gpnewbitmap. А по сообщению WM_PAINT копирую из своего DC в DC окна.
Способа как обращаться напрямую к пикселям окна через GDI не знаю. Но знаю что такая возможность есть в DirectX. Но даже там я не писал напрямую в окно, а использовал двойную буферизацию. То есть пока в окне отображается один фрейм происходит отрисовка следующего фрейма, по окончании отрисовки происходит переключение: новый фрейм в окно, на старом происходит новая отрисовка. Иначе, если писать напрямую в окно появляется мерцание (видно как происходит заливка и отрисовка).

Вернуться к обсуждению:
Create an in memory bitmap and draw directly to the memory C++ WinAPI
1
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.12.2014, 14:31
Готовые ответы и решения:

Out of memory
прога использует AlphaControls. при линковке выпадает оут оф мемори.

Out of memory
Приветствую уважаемые! Изучаю ассемблер по учебнику &quot;Ассемблер - это просто&quot;. Дошел до создания...

Out of memory
После добавления очередной формы в проект при попытке его сохранить возникает ошибка Out Of Memory...

Out of memory
Недавно решил освоить графику в с++, и при прорисовке изображения на канве заметил, что оно...

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

Out of memory
Всем привет. У меня есть две матрицы размеров 306000 на 14000. Мне нужно поэлементно разделить их...

Out of memory
Не подскажите из-за чего здесь может возникать Out of memory? v2 и r2 - динамические массивы. ...

Out of memory
то ли я чего то не понимаю, то ли что... весит папка с приложением 4,1мб. собирается под...

Out of memory в C++ builder
Здравствуйте! Расскажите, пожалуйста, что надо делать в программе, чтобы избежать outofmemory...

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