Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 18.01.2015, 21:36
helper999999 helper999999 вне форума
Прохожий
 
Регистрация: 30.09.2014
Сообщения: 32
Версия Delphi: Delphi XE5
Репутация: 10
По умолчанию Вставить какртинку на winapi

Помогите не получается вставить картинку из ресурса.

Код:
function MessageMainProcess(Handle: HWND; Msg: UINT; WParam: Integer; LParam: Integer): Integer;stdcall;
begin
  Result:=0;
  case msg of
    WM_CREATE:
      begin
      { ...}
      end;
    WM_PAINT:
     begin

     bmp:= LoadGIFRes(hInstance, 'button_next', 'GIF');//Загрузка *.RES
 SelectObject(hdcMem, bmp);
 BitBlt(a, 0, 0, 100, 100, hdcMem, 100, 100, SRCCOPY);
   
     end;

    WM_DESTROY:
      begin
        PostQuitMessage(0);
        Exit;
      end;
  end;
  Result:=DefWindowProc(Handle,Msg,WParam,LParam);
end;
procedure LoadGIFRes она конвертирует, работает как надо но изображение не обрисовывается.
Ответить с цитированием
  #2  
Старый 18.01.2015, 23:59
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Загрузку файла лучше делать в сообщении WM_CREATE.
Чтобы сказать почему не отрисовывается, нужно видеть часть кода. Откуда взялась переменная а, обычно это ps.hdc, как получена hdcMem?
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #3  
Старый 19.01.2015, 00:48
helper999999 helper999999 вне форума
Прохожий
 
Регистрация: 30.09.2014
Сообщения: 32
Версия Delphi: Delphi XE5
Репутация: 10
По умолчанию

Цитата:
Сообщение от angvelem
Загрузку файла лучше делать в сообщении WM_CREATE.
Чтобы сказать почему не отрисовывается, нужно видеть часть кода. Откуда взялась переменная а, обычно это ps.hdc, как получена hdcMem?

надо попробывать, да и самому интересно переменные чем их обозвать, скажу честно что код выдрал из интернета, так как раньше не задовался этим вопросом, и по-этому не знаю. Может как раз вы госспода поможете разобраться.
Ответить с цитированием
  #4  
Старый 19.01.2015, 01:03
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Поможем, если более полный код будет. В частности указанные переменные интересуют.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #5  
Старый 19.01.2015, 01:28
helper999999 helper999999 вне форума
Прохожий
 
Регистрация: 30.09.2014
Сообщения: 32
Версия Delphi: Delphi XE5
Репутация: 10
По умолчанию

переменные
Код:
var
  hdcMem,a: THandle;
  bmp: hBitmap;
Ответить с цитированием
  #6  
Старый 19.01.2015, 02:30
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Так не пойдёт. Прежде чем использовать эти переменные их нужно инициализировать. Вот этот кусок кода интересует. Кстати, переменная a, не может быть типа THandle.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:42.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025