Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 19.12.2012, 16:42
Аватар для borockov
borockov borockov вне форума
Начинающий
 
Регистрация: 18.08.2012
Сообщения: 125
Репутация: 10
По умолчанию Groupbox, не меняет цвет

Друзья, не могу понять что происходит. Задаю цвет режиме дизайнтайм компоненту groupbox, а при компиляций, на нём висит стандартный серый цвет. Пробовал писать в событий oncreat формы
Код:
groupbox1.color:=Цвет;
не помогло. В чём проблема?
Ответить с цитированием
  #2  
Старый 19.12.2012, 19:41
Аватар для orion_asm
orion_asm orion_asm вне форума
Прохожий
 
Регистрация: 23.06.2012
Адрес: Украина, Днепропетровск
Сообщения: 19
Версия Delphi: XE3
Репутация: 10
По умолчанию

Возможно вы забываете добавлять префикс cl перед указанием цвета.
Код:
GroupBox2.Color := clred;
Ответить с цитированием
  #3  
Старый 19.12.2012, 20:53
my33oh my33oh вне форума
Новичок
 
Регистрация: 17.12.2012
Сообщения: 93
Репутация: -579
По умолчанию

Уже всего то 11 лет с выхода ХР винда отрисовывает свои элементы управления согласно заданной пользователем темой.
Внезапно ?

Соответственно у тебя 3 варианта:
1) убрать из программы манифест и она будет выглядеть как УГ на фоне остальных, но зато шикарно разноцветной
2) заставлять пользователей включать "классическую" тему в винде, чтобы все вокруг выглядело как УГ, но при этом радовать их взор своей программой, наполненной палитрой ярких красок
3) рисовать самому все элементы которые не вписываются в рамки твоей художественной фантазии

Последний раз редактировалось my33oh, 19.12.2012 в 20:55.
Ответить с цитированием
  #4  
Старый 20.12.2012, 09:15
nixel nixel вне форума
Начинающий
 
Регистрация: 12.12.2011
Адрес: Москва
Сообщения: 150
Версия Delphi: XE2-U4
Репутация: 131
По умолчанию

Цитата:
Сообщение от my33oh
Уже всего то 11 лет с выхода ХР винда отрисовывает свои элементы управления согласно заданной пользователем темой.
Внезапно ?

Соответственно у тебя 3 варианта:
1) убрать из программы манифест и она будет выглядеть как УГ на фоне остальных, но зато шикарно разноцветной
2) заставлять пользователей включать "классическую" тему в винде, чтобы все вокруг выглядело как УГ, но при этом радовать их взор своей программой, наполненной палитрой ярких красок
3) рисовать самому все элементы которые не вписываются в рамки твоей художественной фантазии
ну или как нинзя-вариант использовать firemonkey (начиная с Delphi XE2). Там контролы спокойно разукрашиваются в любые цвета без привязки к ОС =)
Ответить с цитированием
  #5  
Старый 20.12.2012, 12:45
Аватар для borockov
borockov borockov вне форума
Начинающий
 
Регистрация: 18.08.2012
Сообщения: 125
Репутация: 10
По умолчанию =)

Цитата:
Сообщение от my33oh
Уже всего то 11 лет с выхода ХР винда отрисовывает свои элементы управления согласно заданной пользователем темой.
Внезапно ?

Соответственно у тебя 3 варианта:
1) убрать из программы манифест и она будет выглядеть как УГ на фоне остальных, но зато шикарно разноцветной
2) заставлять пользователей включать "классическую" тему в винде, чтобы все вокруг выглядело как УГ, но при этом радовать их взор своей программой, наполненной палитрой ярких красок
3) рисовать самому все элементы которые не вписываются в рамки твоей художественной фантазии
В общем у тебя есть неплохой генератор идеи=) проблему решил, картинкой))) всем спасибо)
Ответить с цитированием
  #6  
Старый 20.12.2012, 15:46
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Цитата:
Сообщение от borockov
картинкой
зачем?
Код:
unit Unit1;

interface

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

type
  TGroupBox = class(StdCtrls.TGroupBox)
  public
    procedure WMERASEBKGND(var Msg: TWMEraseBkgnd); message WM_ERASEBKGND;
  end;

  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Edit1: TEdit;
    Button1: TButton;
    XPManifest1: TXPManifest;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TGroupBox }

procedure TGroupBox.WMERASEBKGND(var Msg: TWMEraseBkgnd);
begin
  Canvas.Brush.Color:=Color;
  FillRect(Msg.DC, ClientRect, Canvas.Brush.Handle);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  GroupBox1.Color:=clCream;
end;

end.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 07:19.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025