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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.04.2013, 09:53   #1
ichi
Форумчанин
 
Регистрация: 14.03.2012
Сообщений: 147
По умолчанию Не работает код смены картинки при наведении курсора мыши

Добрый день,

Не работает код смены картинки при наведение курсора мыши. На форме расположил два компонента типа TImage, с именами imgMin1 и imgMin2. В эти компоненты из файла ресурсов загружаю по картинке. Загрузка из ресурсов выполняется из обработчика события формы OnCreate. В этом же обработчике описал расположение и размеры компонентов imgMin1 и imgMin2 на форме. Далее в обработчике события формы OnMouseMove проверяю попадает ли курсор в imgMin1, если да то делаю imgMin1 невидимым, а imgMin2 видимым. Но, по какой-то причине данный проврка не срабатывает. Помогите, пожалуйста, понять в чем проблема.

Код программы:
Код:
unit ex_p14_unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls;

type
  TForm1 = class(TForm)
    imgMin1: TImage;
    imgMin2: TImage;
    imgMin3: TImage;
    procedure FormCreate(Sender: TObject);
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  imgMin1.Picture.Bitmap.LoadFromResourceName(hInstance, 'b_down_1a');
  imgMin1.Left := 245;
  imgMin1.Top := 4;
  imgMin1.Visible := True;
  imgMin1.Width := 17;
  imgMin1.Height := 17;

  imgMin2.Picture.Bitmap.LoadFromResourceName(hInstance, 'b_down_2a');
  imgMin2.Left := 245;
  imgMin2.Top := 4;
  imgMin2.Visible := False;
  imgMin2.Width := 17;
  imgMin2.Height := 17;

  imgMin3.Picture.Bitmap.LoadFromResourceName(hInstance, 'b_down_3a');
  imgMin3.Left := 245;
  imgMin3.Top := 4;
  imgMin3.Visible := False;
  imgMin3.Width := 17;
  imgMin3.Height := 17;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  Caption := 'FormX = ' + IntToStr(X) + ' FormY = ' + IntToStr(Y);

  if (X > imgMin1.Top) and (X < imgMin1.Top + imgMin1.Height) and (Y > imgMin1.Left) and (Y < imgMin1.Left + imgMin1.Width) then
      begin
        imgMin1.Visible := False;
        imgMin2.Visible := True;
      end
  else
    begin
      imgMin1.Visible := True;
      imgMin2.Visible := False;
    end;
end;

end.
ichi вне форума Ответить с цитированием
Старый 29.04.2013, 14:42   #2
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

Включите у формы KeyPreview := True
ReportCube вне форума Ответить с цитированием
Старый 29.04.2013, 14:55   #3
alextrof94
Форумчанин
 
Регистрация: 16.03.2013
Сообщений: 599
По умолчанию

А еще проще сделать обработчики движения мыши у каждого из имагов... и кода вроде как так же остается, только лишних проверок на совпадение границ не понадобится.
alextrof94$gmail.com
alextrof94 вне форума Ответить с цитированием
Старый 29.04.2013, 16:19   #4
ichi
Форумчанин
 
Регистрация: 14.03.2012
Сообщений: 147
По умолчанию

Спасибо всем за ответы. Завтра на работе попробую. Забыл добавить, использую Delphi 7.
ichi вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение картинки при наведении курсора! [BeNdeR] Мультимедиа в Delphi 22 08.05.2012 14:03
Изменение рисунка при наведении курсора мыши ru3000 Microsoft Office Excel 4 15.04.2011 01:13
Остановка карусели при наведении курсора мыши. Не работает? daz JavaScript, Ajax 0 20.01.2011 09:22
Подсказка при наведении курсора мыши Syltan JavaScript, Ajax 2 23.04.2010 15:31
Смена картинки при наведении курсора Шсу HTML и CSS 1 26.10.2009 19:50