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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> изменение цвета кнопки при наведении курсора 
:(
    Опции темы
PIF
Дата 16.4.2005, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Подскажите пожалуйста!!! Как мне сделать, чтобы при наведении курсора на кнопку, цвет
текста кнопки менял цвет на заданный, а при удалении курсора становился прежним.
Заранее спасибо!
PM MAIL   Вверх
mvdr
Дата 16.4.2005, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


физик
***


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

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



Тебе обяхательно кнопка? Как вариант, Panel на нее Label, у которого есть свойства MouseLeave и MouseEnter


--------------------
Появляюсь редко, но часто метко

Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано
PM ICQ   Вверх
PIF
Дата 17.4.2005, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Мне желательно кнопка
PM MAIL   Вверх
Joes
Дата 17.4.2005, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



никак... есть, конечно, идея отслеживать координаты курсора, и когда координаты курсора будут совпадать с областью, в которой находится кнопка, менять ее цвет... но это только идея smile Так что не буду кричать, что это выход, т.к. не пробовал...
PM MAIL   Вверх
Bacardi
Дата 17.4.2005, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Вообще Фемида прав(а). Такие эффекты лучше выходят с Label и Panel. Добавляешь немного кода и у тебя уже клевая кнопка. Но если ты уж так прям уперся, попробуй идею Joes
а зачем тебе обязательно кнопка?
--------------------
Необычная смесь. Болтать, но не мешать.http://www.livejournal.com/users/__bacardi__/
PM MAIL WWW ICQ   Вверх
PIF
Дата 17.4.2005, 15:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Спасибо всем за помощь, я написал свой компонент, кому надо берите...
Код
// sBitBtn
//  Автор: Журавлев Олег
//  Дата создания: 17.04.2005
//  Версия: 1.0

unit sBitBtn;

interface

uses
 Windows, Messages, SysUtils, Classes,Graphics, Controls, StdCtrls, Buttons,ShellApi;

type
 TsBitBtn = class(TBitBtn)
 private
     FFontNotMove: TFont;
   FFontMove: TFont;
    procedure SetFontNotMove(Value: TFont);
   procedure SetFontMove(Value: TFont);

   { Private declarations }
 protected
   { Protected declarations }
 public
     procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
   procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;

   { Public declarations }
 published
  constructor Create(aowner: Tcomponent); override;
   destructor destroy; override;
   property FontNotMove: TFont read FFontNotMove write SetFontNotMove;
   property FontMove: TFont read FFontMove write SetFontMove;

   { Published declarations }
 end;

procedure Register;

implementation

procedure Register;
begin
 RegisterComponents('Samples', [TsBitBtn]);
end;
constructor TsBitBtn.Create(aowner: Tcomponent);
begin
 inherited create(Aowner);
 FFontNotMove := TFont.Create;
 FFontMove := TFont.Create;
 FFontNotMove.Color := clBlack;
 FFontMove.Color := clBlue;
 Font := FFontNotMove;
 end;
 destructor TsBitBtn.destroy;
 begin
 FFontNotMove.Destroy;
 FFontMove.Destroy;
 inherited destroy;
end;
procedure TsBitBtn.SetFontNotMove(Value: TFont);
begin
if Assigned(Value) then
 begin
   FFontNotMove.Assign(Value);
   Font := FFontNotMove;
 end;
end;

procedure TsBitBtn.SetFontMove(Value: TFont);
begin
if Assigned(Value) then
   FFontMove.Assign(Value);
end;

procedure TsBitBtn.CMMouseEnter;
begin
 Font := FFontMove;
end;
procedure TsBitBtn.CMMouseLeave;
begin
 Font := FFontNotMove;
end;

end.


Это сообщение отредактировал(а) Girder - 17.4.2005, 17:53
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

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

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

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

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


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

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


 




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


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

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