Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.10.2008, 02:39   #1
Aistto
 
Регистрация: 08.08.2008
Сообщений: 3
По умолчанию Почему меняется Handle?

gdi+
Открываю изображение так:
Код:
procedure TfrmMain.OpenImg;
var
  iImage: TGPImage;      
  koefH, koefW: Double;  
  K: Double;    
  iGraphics : TGPGraphics;         
begin
  K := 1;
  if OpenPctDlg.Execute then
    if FileExists(OpenPctDlg.FileName) then
    begin
      try

        iImage := TGPImage.Create(OpenPctDlg.FileName);
        koefW := ImgMain.Width / iImage.GetWidth;
        koefH := ImgMain.Height / iImage.GetHeight;

        if koefW <= koefH then
          K := koefW
        else
          K := koefH;
        try

          iGraphics := TGPGraphics.Create(ImgMain.Canvas.Handle);
          iGraphics.DrawImage(iImage, 0, 0, iImage.GetWidth*K, iImage.GetHeight*K);
        finally
          iGraphics.Free;
        end;
        ImgMain.Refresh;
      finally
        iImage.Free;
      end;
    end
    else
      ShowMessage('file not found');
end;
Так вот, проблема:
Код:
iGraphics := TGPGraphics.Create(ImgMain.Canvas.Handle);

          iGraphics.DrawImage(iImage, 0, 0, iImage.GetWidth*K, iImage.GetHeight*K);
между строками нельзя использовать showmessage или присваивать значение TLable и т.д. Вообщем меняется Handle в TImage.canvas и вообще меняюся любые xxx.canvas.handle
Почему??? можно как-нибудь заставить их не издеваться? (создавать уничтожать объекты...)

Последний раз редактировалось Aistto; 25.10.2008 в 02:43.
Aistto вне форума Ответить с цитированием
Старый 25.10.2008, 11:20   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Вы там ничего не путаите ? Наверняка напутали...я пользуюсь ничего не меняется. И вообще с чего вы взяли?
BOBAH13 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как имея handle окна узнать handle edit-a который находится в етом окне SeRhy Общие вопросы Delphi 1 20.07.2008 13:48
МОНИТОР - положение картинки меняется Altera Компьютерное железо 10 04.04.2008 15:28
Не меняется формат данных DimEx Microsoft Office Excel 4 06.03.2008 15:17
Handle -=<[Evklidd]>=- Общие вопросы Delphi 5 03.03.2008 09:02