Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 1
Регистрация: 21.11.2015
Сообщений: 217

Почему не выводит картинку?

09.03.2016, 22:44. Показов 850. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
программа пишет что нет такой картинки(((
но она есть на компьютере
где картинка должна хранится? там же где сохраняются все программы?


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
123
124
125
126
127
128
129
130
131
132
133
#include <windows.h>
 
LRESULT CALLBACK DCDemoWndProc(HWND, UINT, UINT, LONG);
 
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdParam, int nCmdShow){
    HWND hWnd;
    WNDCLASS WndClass;
    MSG Msg;
    char szClassName[] = "DCDemo";
    
    WndClass.style = CS_HREDRAW | CS_VREDRAW;
    WndClass.lpfnWndProc = DCDemoWndProc;
    WndClass.cbClsExtra = 0;
    WndClass.cbWndExtra = 0;
    WndClass.hInstance = hInstance;
    WndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
    WndClass.hCursor = LoadCursor(NULL, IDC_ARROW);
    WndClass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
    WndClass.lpszMenuName = "MyMenu";
    WndClass.lpszClassName = szClassName;
    
    if ( !RegisterClass(&WndClass) ){
        MessageBox(NULL, "Can't register class!", "ERROR!", MB_OK);
        return 0;
    }
    
    hWnd = CreateWindow(szClassName, "Picture", WS_OVERLAPPEDWINDOW | WS_VSCROLL | WS_HSCROLL, CW_USEDEFAULT, 
        CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);
    if ( !hWnd ) {
        MessageBox(NULL, "Can't create window!", "ERROR!", MB_OK);
        return 0;
    }
    
    
    ShowWindow(hWnd, nCmdShow);
    UpdateWindow(hWnd);
    
    while ( GetMessage(&Msg, NULL, 0, 0) ){
        TranslateMessage(&Msg);
        DispatchMessage(&Msg);
    }
    
    return Msg.wParam;
}
 
LRESULT CALLBACK DCDemoWndProc(HWND hWnd, UINT Message, UINT wParam, LONG lParam) {
    HDC hDC, hCompatibleDC;
    PAINTSTRUCT PaintStruct;
    HANDLE hBitmap, hOldBitmap;
    RECT Rect;
    BITMAP Bitmap;
    static int nHDif = 0, nVDif = 0, nHPos = 0, nVPos = 0;
    
    switch ( Message ) {
        case WM_PAINT :
            hDC = BeginPaint(hWnd, &PaintStruct);
          
            hBitmap = LoadImage(NULL, "D\\hoh.jpg", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
            if ( !hBitmap ){
                MessageBox(NULL, "File not found!", "Error", MB_OK);
                return 0;
            }
            
            GetObject(hBitmap, sizeof(BITMAP), &Bitmap);
            
            hCompatibleDC = CreateCompatibleDC(hDC);
            
            hOldBitmap = SelectObject(hCompatibleDC, hBitmap);
            
            GetClientRect(hWnd, &Rect);
            
         
            StretchBlt(hDC, 0, 0, Rect.right, Rect.bottom, hCompatibleDC, 0, 0, Bitmap.bmWidth, 
                Bitmap.bmHeight, SRCCOPY);
         
            BitBlt(hDC, 0, 0, Rect.right, Rect.bottom, hCompatibleDC,nHPos, nVPos, SRCCOPY);
            if ( ( nHDif = ( Bitmap.bmWidth - Rect.right ) ) > 0 )
                SetScrollRange(hWnd, SB_HORZ, 0, nHDif, TRUE);
            else
                SetScrollRange(hWnd, SB_HORZ, 0, 0, TRUE);
            if ( ( nVDif = ( Bitmap.bmHeight - Rect.bottom ) ) > 0 )
                SetScrollRange(hWnd, SB_VERT, 0, nVDif, TRUE);
            else
                SetScrollRange(hWnd, SB_VERT, 0, 0, TRUE);
        
            SelectObject(hCompatibleDC, hOldBitmap);
            
            DeleteObject(hBitmap);
            
            DeleteDC(hCompatibleDC);
        
            EndPaint(hWnd, &PaintStruct);
            return 0;
        case WM_VSCROLL :
            switch ( LOWORD(wParam) ){
                case SB_LINEDOWN :
                    if ( nVPos < nVDif )
                        ++nVPos;
                    break;
                case SB_LINEUP :
                    if ( nVPos > 0 )
                        --nVPos;
                    break;
                case SB_THUMBTRACK :
                    nVPos = HIWORD(wParam);
                    break;
            }
            SetScrollPos(hWnd, SB_VERT, nVPos, TRUE);
            InvalidateRect(hWnd, NULL, TRUE);
            return 0;
        case WM_HSCROLL :
            switch ( LOWORD(wParam) ){
                case SB_LINEDOWN :
                    if ( nHPos - nHDif )
                        ++nHPos;
                    break;
                case SB_LINEUP :
                    if ( nHPos > 0 )
                        --nHPos;
                    break;
                case SB_THUMBTRACK :
                    nHPos = HIWORD(wParam);
                    break;
            }
            SetScrollPos(hWnd, SB_HORZ, nHPos, TRUE);
            InvalidateRect(hWnd, NULL, TRUE);
            return 0;
        case WM_DESTROY :
            PostQuitMessage(0);
            return 0;
    }
    return DefWindowProc(hWnd, Message, wParam, lParam);
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.03.2016, 22:44
Ответы с готовыми решениями:

Почему не выводит картинку?
Подскажите в чем дело, почему за место картинки выводит текст ХранилищеЗначения Процедура КнопкаВыполнитьНажатие(Кнопка) ...

Почему smart slider 3 выводит картинку в полный размер а мои размеры игнорирует?
Создал тестовый сайт и залил картинки.Думал сделаю хороший слайдер. Устал я от этого слайдера. Пробовал metaslider так в нем половина...

Подскажите, почему не запускается и почему не выводит решение по частям?
uses crt; label k; var x,y,c,b,a:real; k1,R1,R2,R3:integer; begin k: clrscr; writeln (' 1) 1-Задача'); writeln (' ...

6
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
09.03.2016, 22:50
Цитата Сообщение от Светлана Слонь Посмотреть сообщение
где картинка должна хранится?
Вот эта картинка?
Цитата Сообщение от Светлана Слонь Посмотреть сообщение
"D\\hoh.jpg"
0
0 / 0 / 1
Регистрация: 21.11.2015
Сообщений: 217
10.03.2016, 01:59  [ТС]
я уже поняла)
спасибо)

Добавлено через 4 минуты
только оно выводит с bmp((((
jpg не хочет(
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33379 / 21503 / 8236
Регистрация: 22.10.2011
Сообщений: 36,899
Записей в блоге: 12
10.03.2016, 02:19
Цитата Сообщение от Светлана Слонь Посмотреть сообщение
jpg не хочет
И не должно. LoadImage работает только с битмапами.
0
120 / 142 / 46
Регистрация: 31.10.2014
Сообщений: 721
Записей в блоге: 1
10.03.2016, 07:21
используй GDI+
0
0 / 0 / 1
Регистрация: 21.11.2015
Сообщений: 217
10.03.2016, 18:19  [ТС]
а как вывести несколько картинок???
0
120 / 142 / 46
Регистрация: 31.10.2014
Сообщений: 721
Записей в блоге: 1
11.03.2016, 05:38
так же как и одну.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.03.2016, 05:38
Помогаю со студенческими работами здесь

Не полностью выводит картинку
Привет ребят. В общем написал скрипт по выводу картинки из БД. Для большинства JPEG картинок работает норм, но для меньшей - выводит криво....

ПК не выводит картинку на экран
Здравствуйте! У меня тут проблема вышла. Буквально 2 дня назад,при перевозке ПК повредели куллер(лопасти по полам). Ну вот решил и...

Не выводит картинку на монитор
Здравствуйте! Помогите решить проблему, не выводит картинку на экран, матплата новая QDS G41 LGA775, видеокарта ASUS рабочая,монитор тоже,...

Не выводит картинку персонажа
Скачал исходник на C++ с трудом настроил SFML будь она не ладна ради этого исходника, и запустил в конце концов. но вот изображения...

Видеокарта не выводит картинку на монитор
В общем проблема такая, на моей видеокарте Radeon hd6850 я поменял систему охлаждения на Accelero Twin Turbo 2, так как стандартный кулер...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru