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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2008, 12:56   #1
Snake_ua
Пользователь
 
Регистрация: 25.09.2007
Сообщений: 66
По умолчанию Цвет кнопки

Можно ли как-то изменить цвет кнопки button или bitbtn?
Snake_ua вне форума Ответить с цитированием
Старый 01.02.2008, 13:05   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Только ручной отрисовкой.
Не желаете с этим связываться - используйте панели вместо кнопок...
mihali4 вне форума Ответить с цитированием
Старый 01.02.2008, 13:48   #3
BanDit
Пользователь
 
Аватар для BanDit
 
Регистрация: 26.05.2007
Сообщений: 58
По умолчанию

Для красивого дизайна я использую Alpha Controls. Неплохо получается!
BanDit вне форума Ответить с цитированием
Старый 01.02.2008, 13:56   #4
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Цитата:
Сообщение от BanDit Посмотреть сообщение
Для красивого дизайна я использую Alpha Controls. Неплохо получается!
Честно говоря, я думаю это не дизайн, а так повыпендриваться Дизайн для меня, это когда ты сам все оформляеш и отрисовываеш по тематике самого приложения в собственных стилях, будь то строго или наоборот... Я так всегда делаю
BOBAH13 вне форума Ответить с цитированием
Старый 01.02.2008, 16:18   #5
Лёка
Пользователь
 
Регистрация: 09.01.2008
Сообщений: 42
По умолчанию

а где взять Alpha Controls?
Лёка вне форума Ответить с цитированием
Старый 01.02.2008, 17:26   #6
ruPy
Пользователь
 
Аватар для ruPy
 
Регистрация: 13.12.2007
Сообщений: 11
Восклицание

Можешь использовать ToolBar (Win32 вкладка), с помощью него создать кнопки и в них вставить изображение при помощи Imagelist (таже вкладка).
В каждом нашем действии есть смысл...Но иногда его трудно найти.
ruPy вне форума Ответить с цитированием
Старый 01.02.2008, 17:52   #7
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Цитата:
Сообщение от ruPy Посмотреть сообщение
Можешь использовать ToolBar (Win32 вкладка), с помощью него создать кнопки и в них вставить изображение при помощи Imagelist (таже вкладка).
Интересно к чему Вы это ? А если серезно то кнопку руками сделать пол часа работы
BOBAH13 вне форума Ответить с цитированием
Старый 01.02.2008, 20:31   #8
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Сообщение от ruPy Посмотреть сообщение
Можешь использовать ToolBar (Win32 вкладка), с помощью него создать кнопки и в них вставить изображение при помощи Imagelist (таже вкладка).
Может, я что-то не понимаю, но при чем тут ToolBar, если, например, на BitBtn можно глиф наложить? Или на SpeedButton?
mihali4 вне форума Ответить с цитированием
Старый 01.02.2008, 22:27   #9
Лёка
Пользователь
 
Регистрация: 09.01.2008
Сообщений: 42
По умолчанию

если объяснишь все в коментариях как кнопку делать, то буду очень благодарен

Последний раз редактировалось Лёка; 01.02.2008 в 22:29.
Лёка вне форума Ответить с цитированием
Старый 01.02.2008, 22:50   #10
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Код:
type
  TAButtonState = (asUp, asDown);

  TAButton = class(TCustomControl)
  private
    FColorDown: TColor;
    FColorUp: TColor; 
    FState: TAButtonState;

    procedure SetColorDown(Value: TColor);
    procedure SetColorUp(Value: TColor);

    procedure WMLBUTTONDOWN(var Message: TWMLBUTTONDOWN); message WM_LBUTTONDOWN;
    procedure WMLBUTTONUP(var Message: TWMLBUTTONUP); message WM_LBUTTONUP;
    procedure WMSIZE(var Message: TWMSIZE); message WM_SIZE;
  public
    procedure Paint; override;
  published
    property ColorDown: TColor read FColorDown write SetColorDown default clGray;
    property ColorUp: TColor read FColorUp write SetColorUp default clBtnShadow;
    property Caption;
    property Font;
    property OnClick;
  end;

implementation

constructor TAButton.Create(AOwner: TComponent);
begin
  inherited;
  FColorUp := clBtnShadow;
  FColorDown := clGray;
end;

procedure TAButton.SetColorDown(Value: TColor);
begin
  if (Value <> FColorDown) then
  begin
    FColorDown := Value;
    RePaint;
  end;
end;

procedure TAButton.SetColorUp(Value: TColor);
begin
  if (Value <> FColorUp) then
  begin
    FColorUp := Value;
    RePaint;
  end;
end;

procedure TAButton.WMLBUTTONDOWN(var Message: TWMLBUTTONDOWN);
begin
  inherited;
  FState := asDown;
  RePaint;
end;

procedure TAButton.WMLBUTTONUP(var Message: TWMLBUTTONUP);
begin
  inherited;
  FState := asUp;
  RePaint;
end;

procedure TAButton.WMSIZE(var Message: WMSIZE);
begin
  inherited;
  RePaint;
end;

procedure TAButton.Paint;
var
  Draw: TBitMap;
begin
  Draw := TBitMap.Create;
  Draw.Width := Width;
  Draw.Height := Height;
  case FState of
    asUp:
      Draw.Canvas.Brush.Color := FColorUp;
    asDown: 
      Draw.Canvas.Brush.Color := FColorDown;
  end;
  Draw.Canvas.FillRect(Draw.Canvas.ClipRect);
  Draw.Canvas.Font.Assign(Font);
  Draw.Canvas.TextOut((Width - Draw.Canvas.TextWidth(Caption)) div 2,
    (Height - Draw.Canvas.TextHeight('W')) div 2, Caption);
  Canvas.Draw(0, 0, Draw);
  Draw.Free;
end;
Писал на быструю руку прямо тут так что... ну все устроено гдет-то так ))

А вот чего я добился в последнее время.. пример кнопки ( ехе ) во вложении
Вложения
Тип файла: zip Project1.zip (198.5 Кб, 273 просмотров)

Последний раз редактировалось BOBAH13; 01.02.2008 в 23:00.
BOBAH13 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
UCOZ: Кнопки кнопки на изображении ReDuX HTML и CSS 19 25.04.2008 02:39
RGB в Цвет. HELP! Altera Мультимедиа в Delphi 1 27.02.2008 07:58
Цвет фона кнопки romets Win Api 10 23.01.2008 17:13
триггерные кнопки и кнопки переключатели в DELPHI MARGO Помощь студентам 3 12.11.2007 17:35
Как изменить цвет шрифта кнопки + объявление OnClick Yury Общие вопросы Delphi 7 04.05.2007 04:55