Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
19 / 19 / 3
Регистрация: 11.11.2012
Сообщений: 253

Добавление своей иконки Dev C++ (Что не так?)

17.02.2014, 15:56. Показов 1996. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
#include<windows.h>
 
 
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
//îãîëîøåííÿ ðÿäêà-³ìÿ ïðîãðàìè
char szProgName[]="²ìÿ ïðîãðàìè";
char szIconName[]="IDI_MYICON"; 
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow)
{
HWND hWnd;
MSG lpMsg;
WNDCLASS w; 
w.lpszClassName=szProgName; 
w.hInstance=hInstance; 
w.lpfnWndProc=WndProc; 
w.hCursor=LoadCursor(NULL, IDC_ARROW);
w.hIcon=LoadIcon(hInstance, szIconName); 
w.lpszMenuName=0; // ìåíþ ïîêè íå áóäåBRUSH)WHITE_BRUSH; 
w.style=CS_HREDRAW|CS_VREDRAW;
w.cbClsExtra=0;
w.cbWndExtra=0;
 
 
if(!RegisterClass(&w))
return 0;
 
 CreateWindow
hWnd=CreateWindow(szProgName, 
WS_OVERLAPPEDWINDOW, 
100,
100,
500,
400,
(HWND)NULL, 
(HMENU)NULL
(HINSTANCE)hInstance, 
(HINSTANCE)NULL);
 
 
ShowWindow(hWnd, nCmdShow);
//Îíîâëåííÿ âì³ñòó â³êíà
UpdateWindow(hWnd);
 
 
 
while(GetMessage(&lpMsg, hWnd, 0, 0)) {
TranslateMessage(&lpMsg);
DispatchMessage(&lpMsg);
}
return(lpMsg.wParam); 
}
 
 
LRESULT CALLBACK WndProc(HWND hWnd, UINT messg, 
WPARAM wParam, LPARAM lParam)
{
HDC hdc; 
PAINTSTRUCT ps;
switch(messg)
{
case WM_PAINT :
 
hdc=BeginPaint(hWnd, &ps);
TextOut(hdc,100,100,"Ïðèâ³ò, WIN 32 API!!!!",23);
 
ValidateRect(hWnd, NULL);
EndPaint(hWnd, &ps);
break;
 
 
case WM_DESTROY:
PostQuitMessage(0);
break;
 
default:
return(DefWindowProc(hWnd, messg, wParam, lParam)); 
}
return 0;
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.02.2014, 15:56
Ответы с готовыми решениями:

И так, что не так с моим запросом на добавление записи в таблицу?
$sql = 'INSERT INTO product ' . '(name, code, price, category_id, brand, availability,' . 'description,...

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

Ошибка при загрузке иконки и курсора (winapi, dev c++)
Всем доброго вечера! Изучаю winapi и как раз дошла до темы загрузки пользовательских иконок и курсоров в учебнике Петцольда. Программку...

16
Исследователь
 Аватар для GrayWolf
318 / 317 / 24
Регистрация: 06.04.2011
Сообщений: 872
18.02.2014, 05:08
Седьмую строку удалить, затем в 17-ой исправить на это:
C++
1
w.hIcon=LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MYICON));
1
19 / 19 / 3
Регистрация: 11.11.2012
Сообщений: 253
18.02.2014, 19:01  [ТС]
17 C:\Users\____\Desktop\main.cpp `IDI_MYICON' undeclared (first use this function)
а с этим что сделать?
0
Исследователь
 Аватар для GrayWolf
318 / 317 / 24
Регистрация: 06.04.2011
Сообщений: 872
18.02.2014, 19:32
Андрей 94, об'явить эту переменную глобальной для main.cpp. Или, проще, для всего проекта в заголовочном файле
1
19 / 19 / 3
Регистрация: 11.11.2012
Сообщений: 253
18.02.2014, 20:43  [ТС]
char szIconName[]="IDI_MYICON"; а это разве не обьявление было? просто первый раз прогу с апи пишу
0
Brainsbreaker
 Аватар для Digit@ll
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
18.02.2014, 21:19
Андрей 94, ты сейчас пытаешься решить одну задачу совершенно разными способами, притом в одном исходнике, так не получится.
22 строка: w.hIconSm = (HICON)LoadImage (0, "C:\\NameOf.ico", IMAGE_ICON, LR_DEFAULTSIZE, LR_DEFAULTSIZE, LR_LOADFROMFILE); И в выложенном коде порядок сначала наведи.
0
19 / 19 / 3
Регистрация: 11.11.2012
Сообщений: 253
18.02.2014, 21:46  [ТС]
Цитата Сообщение от Digit@ll Посмотреть сообщение
Андрей 94, ты сейчас пытаешься решить одну задачу совершенно разными способами, притом в одном исходнике, так не получится.
22 строка: w.hIconSm = (HICON)LoadImage (0, "C:\\NameOf.ico", IMAGE_ICON, LR_DEFAULTSIZE, LR_DEFAULTSIZE, LR_LOADFROMFILE); И в выложенном коде порядок сначала наведи.
23 C:\Users\____\Desktop\main.cpp 'struct WNDCLASS' has no member named 'hIconSm'
0
Brainsbreaker
 Аватар для Digit@ll
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
18.02.2014, 21:52
WNDCLASSEX

Не по теме:

Понятно, забудь.

0
19 / 19 / 3
Регистрация: 11.11.2012
Сообщений: 253
18.02.2014, 22:03  [ТС]
Цитата Сообщение от Digit@ll Посмотреть сообщение
WNDCLASSEX

Не по теме:

Понятно, забудь.

прочитал про виндклассех но теперь вопрос как использовать его вместо виндклас ? что писать надо?
0
Brainsbreaker
 Аватар для Digit@ll
899 / 374 / 54
Регистрация: 01.02.2011
Сообщений: 1,608
18.02.2014, 22:09
Понятия не имею. У меня на твой код Студия трехэтажный городит.
0
Исследователь
 Аватар для GrayWolf
318 / 317 / 24
Регистрация: 06.04.2011
Сообщений: 872
19.02.2014, 05:43
Лучший ответ Сообщение было отмечено Андрей 94 как решение

Решение

Вот исходники и результат компиляции. Компилятор правда mingw, в связи с чем студия, возможно, на что-то ругнется. Но так все корректно.
Комментариев там достаточно, думаю, что хватит. Удачи!

Не по теме:

За кучу выдаваемых ошибок, громоздкость и скорость работы, а также совершенно идиотский редактор ресурсов, и недолюбливаю студию. Хотя, в общем, писать в ней достаточно удобно.

Вложения
Тип файла: zip test.zip (19.5 Кб, 13 просмотров)
1
19 / 19 / 3
Регистрация: 11.11.2012
Сообщений: 253
19.02.2014, 17:37  [ТС]
Цитата Сообщение от GrayWolf Посмотреть сообщение
Вот исходники и результат компиляции. Компилятор правда mingw, в связи с чем студия, возможно, на что-то ругнется. Но так все корректно.
Комментариев там достаточно, думаю, что хватит. Удачи!

Не по теме:

За кучу выдаваемых ошибок, громоздкость и скорость работы, а также совершенно идиотский редактор ресурсов, и недолюбливаю студию. Хотя, в общем, писать в ней достаточно удобно.

а как еще сделать что бы в левом верхнем углу пиктограммой эта иконка была тоже?
0
Исследователь
 Аватар для GrayWolf
318 / 317 / 24
Регистрация: 06.04.2011
Сообщений: 872
19.02.2014, 19:08
Цитата Сообщение от Андрей 94 Посмотреть сообщение
а как еще сделать что бы в левом верхнем углу пиктограммой эта иконка была тоже?
Что-то я не понял вопроса. А что, сейчас она не в верхнем левом углу приложения?
0
19 / 19 / 3
Регистрация: 11.11.2012
Сообщений: 253
20.02.2014, 09:28  [ТС]
нет только значек программы изменился
0
Исследователь
 Аватар для GrayWolf
318 / 317 / 24
Регистрация: 06.04.2011
Сообщений: 872
20.02.2014, 11:28
Так, сделаем по другому... Скриншот экрана "в студию": где должен быть значок и где он сейчас
0
19 / 19 / 3
Регистрация: 11.11.2012
Сообщений: 253
21.02.2014, 00:46  [ТС]
получается вот что у меня в папке 2 приложения одно Проджект1.ексе там иконка отображается в левом верхнем углу окна а второе Мейн.ексе где я добавил вывод текста в окно иконки нет
0
Исследователь
 Аватар для GrayWolf
318 / 317 / 24
Регистрация: 06.04.2011
Сообщений: 872
21.02.2014, 04:41
Андрей 94, если я верно понимаю, то во втором приложении просто стоит сделать так же. Иначе... Скриншоты + более описание
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.02.2014, 04:41
Помогаю со студенческими работами здесь

Не работает с создание своей иконки программы с GraphABC
Хочу создать иконку для программы, в которой подключен GraphABC. Делаю все как обычно - беру .rc и .ico, с помощью rc.exe (нашел руками)...

Как прочитать всё содержимое своей иконки
Есть файл, это программа, у этого файла есть иконка, как можно прочитать всё содержимое СВОЕЙ иконки и записать в std::string ??

Приложение создано, ошибок нет, устанавливается но запустить я его не могу - нет иконки. Что я сделал не так?
Код: package ru.wert1go.equation; import android.app.Activity; import android.os.Bundle; import android.text.Html; import...

Как использовать в своей проге ресурсы других - конкретнее иконки?
Как использовать в своей проге ресурсы других - конкретнее иконки? Ну ведь винды извлекают для ярлыков иконки из ехе файлов и как сделать...

Добавление иконки
Qt Creator 3.3.0 (Qt 5.4.0) Добавил иконку, прописав в .pro файл: win32:RC_ICONS += images/icon.ico Сначала это была иконка umbrella...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru