Rambler's Top100
"Knowledge itself is power"
F.Bacon
Поиск | Карта сайта | Помощь | О проекте | ТТХ  
 Сокровищница
  
 

Фильтр по датам

 
 К н и г и
 
Книжная полка
 
 
Библиотека
 
  
  
 


Поиск
 
Поиск по КС
Поиск в статьях
Яndex© + Google©
Поиск книг

 
  
Тематический каталог
Все манускрипты

 
  
Карта VCL
ОШИБКИ
Сообщения системы

 
Форумы
 
Круглый стол
Новые вопросы

 
  
Базарная площадь
Городская площадь

 
   
С Л С

 
Летопись
 
Королевские Хроники
Рыцарский Зал
Глас народа!

 
  
ТТХ
Конкурсы
Королевская клюква

 
Разделы
 
Hello, World!
Лицей

Квинтана

 
  
Сокровищница
Подземелье Магов
Подводные камни
Свитки

 
  
Школа ОБЕРОНА

 
  
Арсенальная башня
Фолианты
Полигон

 
  
Книга Песка
Дальние земли

 
  
АРХИВЫ

 
 

Сейчас на сайте присутствуют:
 
  
 
Во Флориде и в Королевстве сейчас  17:52[Войти] | [Зарегистрироваться]

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


Другие публикации автора: Cepгей Poщин


Важно:
  • Страница предназначена для обсуждения материала, его содержания, полезности, соответствия действительности и так далее. Смысл не в разборке, а в приближении к истине :о) и пользе для всех.
  • Любые другие сообщения или вопросы, а так же личные эмоции в адрес авторов и полемика, не относящаяся к теме обсуждаемого материала, будут удаляться без предупреждения авторов, дабы не мешать жителям нормально общаться.
  • При голосовании учитывайте уровень, на который расчитан материал. "Интересность и полезность" имеет смысл оценивать относительно того, кому именно предназначался материал.
  • Размер одного сообщений не должен превышать 5К. Если Вам нужно сказать больше, сделайте это за два раза. Или, что в данной ситуации правильнее, напишите свою статью.
Всегда легче осудить сделанное, нежели сделать самому. Поэтому, пожалуйста, соблюдайте правила Королевства и уважайте друг друга.



Добавить свое мнение.

Результаты голосования
Оценка содержания

  Содержит полезные и(или) интересные сведения
[1]1100%
 
  Ничего особенно нового и интересного
[2]00%
 
  Написано неверно (обязательно укажите почему)
[3]00%
 
Всего проголосовали: 1

Оценка стиля изложения

  Все понятно, материал читается легко
[1]1100%
 
  Есть неясности в изложении
[2]00%
 
  Непонятно написано, трудно читается
[3]00%
 
Всего проголосовали: 1




Смотрите также материалы по темам:
[Фоновые рисунки, прозрачность, скины ] [Внешний вид в стиле ...]

Комментарии жителей
Отслеживать это обсуждение

Всего сообщений: 17

06-11-2009 01:30
>>> такое выражение начал судить о вашей некомпетентности в данном вопросе
Ну и напрасно. Судить о компетентности программиста в области программирования нужно по разрабатываемым им программам, а не по текстам, которые он пишет. По текстам можно судить о другом.

Вы высказали свое замечание. Можете лполнительно срезать оценку стиля изложения. Но Вы действительно считаете, что здесь уместно обсуждать возможность использование слова "акция" для обозначения TAction? По-моему, такое обсуждение более естественно смотрелось бы, напрмер, вот здесь »тема на БП №383«
 Geo


06-11-2009 00:52
пиктограмма и иконка это синонимы и использование одного из них сразу показывает что вы имели в виду...но акции это неупотребимое выражение в данном контексте...лично я прочитав вашу статью и заметив такое выражение начал судить о вашей некомпетентности в данном вопросе а не о самом вопросе в общем...


05-11-2009 01:37
сообщение от автора материала
послать учить английский...и немного русский... Уже бегу :)
На счет перевода Actions, Вы конечно правы, но есть еще и общепринятая практика. К примеру, большинство использует термин иконка, а не пиктограмма, хотя лампадок на мониторах я еще не встречал.
 Cep


05-11-2009 01:19
Автора хотелось бы послать учить английский...и немного русский...Actions - это не "акции" а "действие" - обрабочик события...например при нажатии на кнопку у тебя же не появляются акции)))


05-02-2009 15:46
сообщение от автора материала
непашет((((( Ни чего не понял... можно по-подробнее? Версия, ошибка.
 Cep


04-02-2009 20:07
непашет(((((

ошибка в строке:

ScaleImage(FormBitmap, DestBitmap, DestBitmap.Width / FormBitmap.Width);


Ето наверно для самой древней версии да???


30-07-2007 05:46
сообщение от автора материала
Перечитал своё сообщение и сам удивился своему красноречию :o) из-за некоторых ошибок в исходниках ни чего не получилось Я хотел сказать, что стандартные предки моих компонентов в Delphi7 содержат ошибки, из-за которых TGradientActionToolBar, TGradientActionMainMenuBar не работают. Т. е. для установки только полупрозрачной кнопки, надо либо удалить всё лишнее и добавить недостающее в пакет в папке Packages10 (для BDS 2006), либо ставить пакет и папки Packages5 (для Delphi 5).
 Cep


30-07-2007 01:13
сообщение от автора материала
Но вот проблема - никак не могу поставить компоненты на 7-ую Делфи Как-то я пытался адаптировать компоненты TGradientActionToolBar, TGradientActionMainMenuBar под Delphi 7, но из-за некоторых ошибок в исходниках ни чего не получилось. Разбираться лениво.
Для установки только TSpeedButtonCep, вам не будет хватать некоторых процедур, их можно найти в  Packages5\GraphUtilEx.pas.
Либо скачайте с моего сайта готовую библиотеку для Delphi 7.
 Cep


28-07-2007 11:57
Здравствуйте!
Мне понравилось как выглядят Ваши тестовые програмки. Вообще классно. Темой полупрозрачных кнопок я заинтересовался недавно. Скачал Ваши исходники. Но вот проблема - никак не могу поставить компоненты на 7-ую Делфи. Вроде и делаю все как обычно, но получаю ошибки.
Где-то я недопонимаю наверное до конца процесса. Можно ли описать последовательность действий при установки этих компонентов?
 Roof


19-07-2007 04:36
Большое спасибо Вам за помощь в данном вопросе!!!


22-05-2007 05:32
сообщение от автора материала

property ColorEx: TColor read fColorEx write SetColorEx default clNone;

означает всего лишь то, что если свойство имеет значение clNone, то оно не пишется в файл dfm для уменьшения размера. Это не освобождает от необходимости установки первоначального значения всех свойств (если они отличны от нуля), что и происходит конструкторе, и в методе UpdateColors.
Этот подход позволяет избежать создания сеттера для цвета. Он позволяет только установить все цвета по умолчанию и не более того. Приведенный в примере сеттер предназначен в основном для того, что бы при смене цвета принудительно перерисовать все связяанные с данной палитрой, меню и инструментальные панели. Это не имеет смысла для большинства цветов, например: для цвета выделенного пункта меню, т.к. при выборе нового пункта меню он и так будет полностью перерисован с новым цветом.
 Cep


22-05-2007 04:14
Cepгей Poщин - спасибо Вам! Воспользовался вашим советом и переделал все наново. Как выяснилось - причина была банальной. Вся проблема заключалась в том, что при объявлении нового property в конце надо было указать default (чего я не сделал). После того как к каждому свойству я добавил default значение все заработало и в моем старом варианте.

Честно говоря не думал что это так критично! Вы бы могли пояснить мне этот момент подробнее?

Еще раз спасибо!

ПС: Кстати, я пошел таким же путем как Борланд при реализации TXpColorMap. Этот подход позволяет избежать создания сеттера для цвета. Вместо сеттера достаточно перегрузить UpdateColors.

--
http://delphigeek.blogspot.com


17-05-2007 16:21
сообщение от автора материала
Проверил. У меня получилось.

unit Unit1;

interface

uses
  ..., ActnMan, ActnColorMaps, ActnMenus, CepStyleActnCtrls, ...;
type
  TXPColorMapEx = class (TXPColorMap)
  private
    fColorEx: TColor;
    procedure SetColorEx(const Value: TColor);
  public
    constructor Create(AOwner: TComponent); override;
  published
    property ColorEx: TColor read fColorEx write SetColorEx default clNone;
  end;
...
  TForm1 = class(TForm)
    GradientActionToolBar1: TGradientActionToolBar;
    GradientActionMainMenuBar1: TGradientActionMainMenuBar;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    C: TXPColorMapEx;
  end;
...
procedure TForm1.Button1Click(Sender: TObject);
begin
  if C = nil then
  begin
    C := TXPColorMapEx.Create(self);
    GradientActionToolBar1.ColorMap := C;
    GradientActionMainMenuBar1.ColorMap := C;
  end
  else
  begin
    C.ColorEx := ClRed;
  end;
end;
...
{ TXPColorMapEx }

procedure ColorProc(ActionBar: TCustomActionBar; Colors: TCustomActionBarColorMap);
begin
  if Assigned(ActionBar) and (Colors is TXPColorMap) then
  begin
    if ((ActionBar is TGradientActionToolBar) or
        (ActionBar is TGradientActionMainMenuBar)) and
        (TXPColorMapEx(Colors).ColorEx <> clNone) then
      ActionBar.Color := TXPColorMapEx(Colors).ColorEx
    else
      ActionBar.Color := Colors.Color;
    if ActionBar.HandleAllocated then
      ActionBar.Invalidate;
  end;
end;

constructor TXPColorMapEx.Create(AOwner: TComponent);
begin
  inherited;
  fColorEx := clNone;
end;

procedure TXPColorMapEx.SetColorEx(const Value: TColor);
begin
  if fColorEx <> Value then
  begin
    fColorEx := Value;
    UpdateActionBars(ColorProc, Value);
    if Assigned(OnColorChange) then OnColorChange(Self);
  end;
end;

end.

Попробуйте еще раз. Если что-то не понятно, оставляйте конкретный вопрос на круглом столе или здесь, а изучать чужие ошибки в чужих программах нет настроения, своих хватает. Успехов.
 Cep


17-05-2007 11:07
Открываем исходники CepStyleActnCtrls. Ищим все места, где встречается слово ColorMap, по аналогии что-то добавляем (делаем свои потомки, или ломаем мои). Смотрим как регистрируется стиль оформления TCepStyleActionBars и также регистрируем свой, если нужно. Аналогично смотрим исходники TXPColorMap и TCustomActionBarColorMap. Большинство свойств у них — это просто поля, всё абсолютно тревиально.
Ну не все так тривиально как вам кажется! Я делал именно то что вы и советуете, но не получается. Проверьте сами. В принципе я написал код, но все равно в нем есть ошибки. Если у вас есть вермя на него взглянуть, то я мог бы его скинуть вам. Просто уж больно хочется расширить набор цветов.


15-05-2007 09:59
сообщение от автора материала
Открываем исходники CepStyleActnCtrls. Ищим все места, где встречается слово ColorMap, по аналогии что-то добавляем (делаем свои потомки, или ломаем мои). Смотрим как регистрируется стиль оформления TCepStyleActionBars и также регистрируем свой, если нужно. Аналогично смотрим исходники TXPColorMap и TCustomActionBarColorMap. Большинство свойств у них — это просто поля, всё абсолютно тревиально.
 Cep


13-05-2007 13:26
Спасибо. Очень полезный материал. А можно ли расширить используемый в новом стиле набор цветов? Если да, то как?


18-02-2007 00:26
не читайте, просто "сынсталируйте"


Добавьте свое cообщение

Вашe имя:  [Войти]
Ваш адрес (e-mail):На Королевстве все адреса защищаются от спам-роботов
контрольный вопрос:
Зимой — белый, летом — серый. Кто?
в качестве ответа на вопрос или загадку следует давать только одно слово в именительном падеже и именно в такой форме, как оно используется в оригинале.
Надоело отвечать на странные вопросы? Зарегистрируйтесь на сайте.

Оценка содержания
 
Содержит полезные и(или) интересные сведения
 
Ничего особенно нового и интересного
 
Написано неверно (обязательно укажите почему)


Оценка стиля изложения
 
Все понятно, материал читается легко
 
Есть неясности в изложении
 
Непонятно написано, трудно читается

Текст:
Жирный шрифт  Наклонный шрифт  Подчеркнутый шрифт  Выравнивание по центру  Список  Заголовок  Разделительная линия  Код  Маленький шрифт  Крупный шрифт  Цитирование блока текста  Строчное цитирование
  • вопрос Круглого стола № XXX

  • вопрос № YYY в тесте № XXX Рыцарской Квинтаны

  • сообщение № YYY в теме № XXX Базарной площади
  • обсуждение темы № YYY Базарной площади
  •  
     Правила оформления сообщений на Королевстве
      
    Время на сайте: GMT минус 5 часов

    Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
    Функция может не работать в некоторых версиях броузеров.

    Web hosting for this web site provided by DotNetPark (ASP.NET, SharePoint, MS SQL hosting)  
    Software for IIS, Hyper-V, MS SQL. Tools for Windows server administrators. Server migration utilities  

     
    © При использовании любых материалов «Королевства Delphi» необходимо указывать источник информации. Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
    Все используемые на сайте торговые марки являются собственностью их производителей.

    Яндекс цитирования