Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вид SpeedButton на Image в режиме Down:=true, как сделать что бы отображалась картинка 
:(
    Опции темы
Johnny_B
  Дата 1.8.2007, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 30.7.2007
Где: Северодонецк

Репутация: нет
Всего: нет



Есть форма, на ней Image1 - полностью покрывающий форму с текстуркой бумаги. Кидаю SpeedButton со свойствами AllowAllUp = true; Flat = true; GroupIndex= 1; Transparent= true; Вообщем получается довольно милая кнопка, которая на форме(картинке) отображается только за счет надписи, если курсор сверху - кнопка преподымается, фоновое изображение на кнопке остается, НО если кнопка на жата т.е. Down = true, и курсор вне кнопки! фоновое изображение пропадает и остается стандартный серый втопленный прямоугольничек-кнопка... Есть ли возможность сделать что бы после нажатия на кнопку картинка оставалась таже т.е. получалось как будто курсор мы не убираем - всё красивоsmile   Извеняюсь за сумбурность, надеюсь основную мысль донес... 
PM MAIL   Вверх
Sanchezzz
Дата 1.8.2007, 22:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 1
Всего: 60



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

это пример из delphi world 
Код

type
   TForm1 = class(TForm)
     Button1: TButton;
     OpenDialog1: TOpenDialog;
     procedure Button1Click(Sender: TObject);
     procedure FormDestroy(Sender: TObject);
   private
     FWallpaper: TBitmap;
     procedure WMEraseBkGnd(var Msg: TWMEraseBkGnd); message WM_ERASEBKGND;
   end;

 var
   Form1: TForm1;

 implementation

 {$R *.DFM}
 procedure TForm1.FormDestroy(Sender: TObject);
 begin
   FWallpaper.Free;
 end;

 procedure TForm1.Button1Click(Sender: TObject);
 begin
   // Load the bitmap 
  // Bild laden 
  if OpenDialog1.Execute then
   begin
     if not Assigned(FWallpaper) then
       FWallpaper := TBitmap.Create;
     FWallpaper.LoadFromFile(OpenDialog1.FileName);
     Invalidate;
   end;
 end;

 procedure TForm1.WMEraseBkGnd(var Msg: TWMEraseBkGnd);
 var
   row, col: Integer;
 begin
   if not Assigned(FWallpaper) then
     inherited
   else
   begin
     // Draw the bitmap 
    // Das Bild zeichnen 
    for Row := 0 to ClientHeight div FWallpaper.Height do
       for Col := 0 to ClientWidth div FWallpaper.Width do
         BitBlt(Msg.Dc,
           Col * FWallpaper.Width,
           Row * FWallpaper.Height,
           FWallpaper.Width,
           FWallpaper.Height,
           FWallpaper.Canvas.Handle,
           0,
           0,
           SRCCOPY);
     Msg.Result := 1;
   end; { else }
 end;

 end.

а пробовал свой Image в на задний фон поставить?



--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
Johnny_B
Дата 1.8.2007, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 30.7.2007
Где: Северодонецк

Репутация: нет
Всего: нет



Sanchezzz, мне нужно что бы при нажатии СпидБатан*а, который находится на картинке (Имэйдж), СпидБатан не закрывал картинку, т.е. не появлялся на его месте серый прямоугольник-кнопка. А оставалась просто "вмятина-кнопка"..... Уффф... наверное скринами лучше все обьяснить... только куда их выложить...

Добавлено через 11 минут и 50 секунд
http://img127.imagevenue.com/img.php?image...1_122_794lo.JPG
pic#1 
кнопка на форме...

http://img146.imagevenue.com/img.php?image...2_122_862lo.JPG
pic#2
на кнопку наведен курсор, кнопка выделилась

http://img189.imagevenue.com/img.php?image...3_122_600lo.JPG
pic#3
кнопку нажали, курсор всё еще над кнопкой

http://img42.imagevenue.com/img.php?image=...4_122_968lo.JPG
pic#4
кнопка нажата, курсор вне кнопки, 

Нужно что бы было при нажатии кнопки как на рис3 а не как на рис4 smile

ЗЫ К сожалению картинки неудалось выложить нормально так как: 
"Динамические страницы в тэгах [IMG] запрещены", а других хранилищ я наспех не нашел:(
PM MAIL   Вверх
Sanchezzz
  Дата 2.8.2007, 00:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 1
Всего: 60



используй RXLIB или JEDI там есть компонент аналогичный SpeedButton. называется в RXlib RXSpeedButton в JEDI JvSpeedButton
я проверил и в JEDI и RXlib - SpeedButton хорошо работает + побольше опций.
см рисунок...

Присоединённый файл ( Кол-во скачиваний: 24 )
Присоединённый файл  button.JPG 14,42 Kb


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
Johnny_B
  Дата 2.8.2007, 00:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 30.7.2007
Где: Северодонецк

Репутация: нет
Всего: нет



Sanchezzz, да это то что надо... хотя хотелось конечно стандартными средствамиsmile

Все равно спасибо, вот только где эти компоненты взять, да к тому же я и не разу не пользовался сторонними компонентами... не знаю как их ставить, но думаю разберусь, спсsmile

Добавлено через 12 минут и 53 секунды
Нашел инфу по RXLIB, незря поиск создан smile  
PM MAIL   Вверх
MetalFan
Дата 2.8.2007, 07:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 22
Всего: 128



Цитата(Johnny_B @  2.8.2007,  00:33 Найти цитируемый пост)
Нашел инфу по RXLIB

RxLib вродеб давно не поддерживается. она включена в Jedi-VCL


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
W1zArD
Дата 2.8.2007, 08:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 29.1.2006

Репутация: нет
Всего: 3



PM   Вверх
Sanchezzz
  Дата 2.8.2007, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 1
Всего: 60



как это не поддерживается у меня на delphi 2006 работает и Jedi и RXlib 
в се компоненты можно найти на torry.ru
Лучше с официального сайта все покатила jedi.


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0745 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.