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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.02.2010, 18:21   #21
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Вот как у меня, если через Image Editor
sshot-1.png
mihali4 вне форума Ответить с цитированием
Старый 25.02.2010, 19:56   #22
killen
Пользователь
 
Регистрация: 07.02.2010
Сообщений: 17
По умолчанию

Михалыч, мне конечно дико неудобно просить вас об этом, но не могли ли вы посмотреть что у меня не так с программой? Я её прикрепил к посту.
И если вам не сложно, посмотрите что у меня с программой, если формат картинки картинку (Image1) сменить с TBitmap на TJPEGImage, то она становиться невидимой.
Заранее вам спасибо.
Вложения
Тип файла: rar prog.rar (1.11 Мб, 12 просмотров)
killen вне форума Ответить с цитированием
Старый 25.02.2010, 23:47   #23
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Нет, вы явно перетрудились...
Код:
procedure TFMain.ImgBtn4MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
ImgBtn1.Canvas.Draw(0, 0, LoadJpegRes('CLOSEPR'));
end;

procedure TFMain.ImgBtn4WindowProc(var Msg: TMessage);
begin
case msg.Msg of
CM_MOUSELEAVE:
begin
if im1<>0 then
begin
ImgBtn1.Canvas.Draw(0, 0, LoadJpegRes('CLOSE'));
im1:=0;
end;
end;
CM_MOUSEENTER:
begin
if lock then
exit;
if im1<>1 then
begin
ImgBtn1.Canvas.Draw(0, 0, LoadJpegRes('CLOSEOM'));
im1:=1;
end;
end;
end;
OldImgBtn1WindowProc(Msg);
end;
И так - во всех процедурах. Везде идут попытки замены картинки в ImgBtn1...
Еще - if im1<>1 then
Этот флажок должен быть персональным для каждой картинки. То есть im1 для ImgBtn1, im2 для ImgBtn2...
Он используется для того, чтобы избегать повторной подгрузки ресурса.
А чтобы избавиться от ошибки из 20-го поста, нужно просто очистить все картинки (свойство Picture в инспекторе объектов)...

З.Ы. И поменяйте фоновую картинку на back.jpg - вес формы сразу упадет с 3-х мегабайт до 184 кил...
Цитата:
если формат картинки картинку (Image1) сменить с TBitmap на TJPEGImage, то она становиться невидимой
Это у вас в процедуре создания формы - // Наводим красивость на форму
Вы там что-то перемудрили.
Я этот кусок вместе с регионами закомментировал - и все нормально видно.

Последний раз редактировалось mihali4; 26.02.2010 в 00:10.
mihali4 вне форума Ответить с цитированием
Старый 26.02.2010, 18:55   #24
killen
Пользователь
 
Регистрация: 07.02.2010
Сообщений: 17
По умолчанию

Михалыч, был бы вам очень признателен, если бы вы выложили уже исправленную программку, а то у меня опять ничего не выходит: картинки не грузятся, форма не меняется.
Простите уж вы меня за такую наглость, но очень надо добить это дело до конца. Спасибо за понимание.
killen вне форума Ответить с цитированием
Старый 26.02.2010, 19:34   #25
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Вот ваша главная форма:
UnitMain.rar
Но с вашими "красивостями" я не разбирался, а просто закомментировал.

З.Ы. Мои замечания по поводу "im1 для ImgBtn1, im2 для ImgBtn2..." остаются в силе - я их не исправлял.
И в procedure TFMain.FormCreate(Sender: TObject); добавьте в самом начале:
Код:
im1:=2;
im2:=im1;
im3:=im1;
im4:=im1;
im5:=im1;

Последний раз редактировалось mihali4; 26.02.2010 в 20:48.
mihali4 вне форума Ответить с цитированием
Старый 26.02.2010, 20:48   #26
killen
Пользователь
 
Регистрация: 07.02.2010
Сообщений: 17
По умолчанию

Огромное вам спасибо, я понял в чем была моя ошибка, с на само изображение кидал картинку, а надо было оставлять его пустым. Ещё раз вам спасибо, без вас бы я не сделал ничего.
killen вне форума Ответить с цитированием
Старый 26.02.2010, 21:01   #27
killen
Пользователь
 
Регистрация: 07.02.2010
Сообщений: 17
По умолчанию

Добавил:
Код:
procedure TFMain.FormCreate(Sender: TObject);
var
  im1:=2;
  im2:=im1;
  im3:=im1;
  im4:=im1;
  im5:=im1;
  regn, tmpRegn, x, y: integer;
  nullClr: TColor;
  s_load: bool;
  Settings: TInifile;
Но появилась ошибка:
Цитата:
[Error] UnitMain.pas(172): ',' or ':' expected but ':=' found
А насчет im2... я сделал так:
Код:
  im1: integer;
  im2: integer;
  im3: integer;
  im4: integer;
  im5: integer;
И соответственно в процедурах в каждой кнопке заменю на соответствующий im это будит правильно?
killen вне форума Ответить с цитированием
Старый 26.02.2010, 22:29   #28
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
И соответственно в процедурах в каждой кнопке заменю на соответствующий im это будит правильно?
Да.

А зачем же
Код:
  im1:=2;
  im2:=im1;
  im3:=im1;
  im4:=im1;
  im5:=im1;
вы в объявление переменных засунули ?
Это же установка начальных значений... после первого бегина...
mihali4 вне форума Ответить с цитированием
Старый 27.02.2010, 20:24   #29
killen
Пользователь
 
Регистрация: 07.02.2010
Сообщений: 17
По умолчанию

Еврика, всё получилось, Михалыч, вы не представляете как я вам благодарен за помощь, огромное спасибо, вы очень мне помогли.
killen вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание кнопок Alenkakiss Помощь студентам 4 07.06.2009 18:20
Создание кнопок 3D Active Button Magic aiswork Софт 1 28.05.2009 00:53
По нажатию обеих кнопок мыши выход из программы Slash3 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 10 05.04.2009 00:47
создание кнопок на сайте plaksa HTML и CSS 2 17.12.2008 15:42
Создание кнопок на лету gabin Компоненты Delphi 2 11.05.2008 15:30