Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.09.29;
Скачать: [xml.tar.bz2];

Вниз

Много вопросов по dxRibbon из DevExpress   Найти похожие ветки 

 
Andy BitOff ©   (2013-02-27 14:19) [40]

Глава 2.1
Проблема в том, что данное меню не является наследником от TPopupMenu и просто так его назначить форме или любому другому элементу управления (конечно за исключением компонентов от DevExpress) не получится.

Это не совсем так. У БарМанагера есть PopupMenuLinks: TdxBarPopupMenuLinks который позволяет прицепить Девковское меню к любому контролу.

Почитаем дальше ;)


 
Rouse_ ©   (2013-02-27 14:39) [41]


> Это не совсем так. У БарМанагера есть PopupMenuLinks: TdxBarPopupMenuLinks
> который позволяет прицепить Девковское меню к любому контролу.
>

Проверил, пустой проект, рибон, барманагер, статусбар и TdxRibbonPopupMenu.

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


 
Andy BitOff ©   (2013-02-27 14:50) [42]

Ну форму-то да, не дает, но это уж извиняй :)
Кинь TListBox или TTreeView или еще какой контрол и к ним подцепится.
Т.е. "просто так его назначить форме или любому другому элементу управления (конечно за исключением компонентов от DevExpress) не получится", не совсем верно.
Я просто подумал, что надо было бы указать на такую возможность коннекта меню для контролов.


 
Andy BitOff ©   (2013-02-27 15:02) [43]

В целом хорошая статья. Спасибо.

Опечатка:
"TcxPageControl - это практически полный аналог стандартного TPageControl но у него есть несколько "вкусных" возможностей, в частности уже реализованный механизм перетаскивания табов обычным DragDrop. Правда передаскивать можно только в рамках самого TcxPageControl, на другой перетащить не получится."
передаскивать

Про паинтер интересно. Не знал. Ну и за манагер драгэндропа спасибо.


 
Rouse_ ©   (2013-02-27 15:30) [44]


> Andy BitOff ©   (27.02.13 14:50) [42]
> Ну форму-то да, не дает, но это уж извиняй :)
> Кинь TListBox или TTreeView или еще какой контрол и к ним
> подцепится.

Хм, а это уже я не знал :)
Добавил инфу.


> Опечатка:

Спасибо, поправил.


 
Rouse_ ©   (2013-03-01 21:07) [45]

Кстати за сегодня и вчера пришло два пакета с каментами от DevExpress Team.
Я их все опубликовал, дополнив саму статейку, есть несколько интересных моментов, оказывается базовые контролы которые я всегда использовал являются устаревшими (!!!!!) и сейчас ребята рекомендуют переходить на расширенный вариант контролов TcxBarEditItem.
Это для меня если честно было большим откровением...
ЗЫ: чтоб не листать наверх еще раз ссылка: http://alexander-bagel.blogspot.ru/2013/02/ribbon-devexpress.html


 
Eraser ©   (2013-03-02 00:22) [46]

Для назначения иконок элементам ленты используется внешние ImageList-ы, в принципе это могут быть и обычные TImageList, но желательно использовать TcxImageList ибо данный элемент обладает несколько большим функционалом, по сравнению со стандартным.

Самым важным его свойством является то, что он позволяет работать с 32-битными иконками с альфа-каналом. Раньше приходилось возится с ImageList ручками переводя его в режим ILC_COLOR32 и руками добавлять в него иконки из ресурсов, дабы не было потери альфаканала при конвертации. С появлением TcxImageList данная проблема отпала.

Это вот опять "уши" Delphi 7 торчат ;-) в новых версиях (не помню с какой) появилась полная поддержка 32 разрядных битмапов и png "из коробки".

Кстати, замечание DevExp"у скорее уже не по риббону, а вообще. По умолчанию они регистрируют свои классы для свойств picture всех изображений, где есть стандартный TPicture, на свои типа TdxPNGImage, которые не корректно отображают 32 битные изображения. Отключить регистрацию этих типов можно закомментив {$DEFINE DXREGISTERPNGIMAGE} в dxGDIPlusClasses.pas, но делать это и ребилдить компоненты заново после каждого апдейта напрягает. Убрали бы они эту регистрацию хотя бы для новых версий делфи.


 
Andy BitOff ©   (2013-03-02 10:50) [47]

Розыч, если у тебя есть на них выход, скажи им, чтобы нормально расставили Align"ы и Anchors"ы в форме Customize в рантайме. А то тянется позорище с фиг знает каких времен.
Актуально для 6.53, 6.54, 12.1.3  других у меня сейчас нет. На днях купят последнии 12.2.2 (по-моему) тогда и там посмотрю.


 
Andy BitOff ©   (2013-03-02 10:53) [48]

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


 
Andy BitOff ©   (2013-03-02 11:08) [49]

А, да, чего я зашел-то, забыл совсем :)
Розыч, а не подскажешь мне как получить цвет бэкграунда текущего скина в виде цвета и набора цветов для градиента?
Ну, т.е. вот эти цвета
http://img401.imageshack.us/img401/2875/5d6ddefd6ac0489e8341872.png

синий или черный в данном случае.


 
Rouse_ ©   (2013-03-02 15:37) [50]


> Eraser ©   (02.03.13 00:22) [46]
> Это вот опять "уши" Delphi 7 торчат ;-) в новых версиях
> (не помню с какой) появилась полная поддержка 32 разрядных
> битмапов и png "из коробки".

2010-ая точно не умеет работать с альфой. Могу проверить в ХЕ3, но она на работе, мошт там что поправили.


> Andy BitOff ©   (02.03.13 10:50) [47]
> Розыч, если у тебя есть на них выход, скажи им, чтобы нормально
> расставили Align"ы и Anchors"ы в форме Customize в рантайме.

А что с ней не так?


> Розыч, а не подскажешь мне как получить цвет бэкграунда
> текущего скина в виде цвета и набора цветов для градиента?

Это нужно смотреть параметры текущего пайнтера, на вскидку не помню какой именно параметр возвращает данное значение.


 
Eraser ©   (2013-03-02 16:03) [51]


> Rouse_ ©   (02.03.13 15:37) [50]

наверное с XE1 сделали поддержку.


 
Andy BitOff ©   (2013-03-02 18:26) [52]

> Rouse_ ©   (02.03.13 15:37) [50]
> А что с ней не так?

У меня она ведет себя вот так:
http://s2.hostingkartinok.com/uploads/images/2013/03/4068d826dc91d41fa1ef6c4d86f5d820.gif

> Это нужно смотреть параметры текущего пайнтера, на вскидку не помню какой именно параметр возвращает данное значение.
Я чего-то не нашел :(


 
Rouse_ ©   (2013-03-02 20:27) [53]


> Andy BitOff ©   (02.03.13 18:26) [52]
> > Rouse_ ©   (02.03.13 15:37) [50]
> > А что с ней не так?
>
> У меня она ведет себя вот так:

Это какой-то глюк, у меня такое поведение не воспроизводится.


> Я чего-то не нашел :(

Ну щас искать лениво, на работе гляну мои наработки и отпишусь.


 
Andy BitOff ©   (2013-03-02 20:32) [54]

> Это какой-то глюк, у меня такое поведение не воспроизводится.
Хм...
Хреново. Потому как, судя по форме они-то как раз сделали его ресайзным только по высоте, а мне бы надо полный ресайз. Нет, перекомпилировать-то можно, но сам понимаешь, генофонд, да и каждый раз это делать... Короче жаль :(


 
Rouse_ ©   (2013-03-02 21:15) [55]

Ну да оно ресайзится только по высоте. Если ты руками разрешил и по ширене ресайзить, то тогда алигны для контролов тоже сам расставляй.


 
Andy BitOff ©   (2013-03-02 23:21) [56]

> Rouse_ ©   (02.03.13 21:15) [55]
> Если ты руками разрешил и по ширене ресайзить
Не, сам ничего не делал. Такое оно само было :)
Ну да ладно, сделаю нормально перекомпилю. Там сплитер напрашивается и остальное допилю.
Спасибо.

Если найдешь как цвета получить, с меня еще и пивасик по приезду ;) Мы как-то с Тимуром собирались, но не дособирались :) Может еще и наведаемся. ;)


 
tartuff22 ©   (2013-04-22 22:06) [57]

Мне тоже кажется, что

> обычные окна не смотрятся на фоне Ribbon-style окон

В демках к ExpressQuantumGrid используется форма BaseForm. Формы, унаследованные от нее, выглядят соответственно выбранному стилю. Я сделал себе базовую форму с использованием функционала BaseForm и все окна в приложении (кроме главного) наследую от нее. Может, кому пригодится

unit SkinedForm;

interface

uses
  Vcl.Forms ;

type
 TfrmSkined = class(TForm)
 private
   { Private declarations }
 public
   { Public declarations }
   procedure AfterConstruction; override;
 end;

implementation

{$R *.dfm}

uses
  System.SysUtils
 , dxCore
 , dxSkinsForm
 , cxLookAndFeels
 , dxSkinscxPCPainter
 , dxSkinOffice2010Blue
 , dxSkinOffice2007Blue
 ;

var
 FSkinController: TdxSkinController;

procedure RegisterAssistants;
begin
 FSkinController := TdxSkinController.Create(nil);
end;

procedure UnregisterAssistants;
begin
 FreeAndNil(FSkinController);
end;

{ TfrmSkined }

procedure TfrmSkined.AfterConstruction;
begin
 inherited;
 RootLookAndFeel.NativeStyle := False;
 RootLookAndFeel.SkinName := "Office2010Blue"; // "Office2007Blue"
end;

initialization
 dxUnitsLoader.AddUnit(@RegisterAssistants, @UnregisterAssistants);

finalization
 dxUnitsLoader.RemoveUnit(@UnregisterAssistants);

end.



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2013.09.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.57 MB
Время: 0.008 c
15-1366016419
p
2013-04-15 13:00
2013.09.29
Реклама на сайте


8-1233162496
Agent[007]
2009-01-28 20:08
2013.09.29
Работа с Mesh, DirectX


2-1358182960
McLotos
2013-01-14 21:02
2013.09.29
сохранение из TStringList в переменную типа string


8-1186063409
leonidus
2007-08-02 18:03
2013.09.29
Конвертирование BMP в GIF


15-1366196955
O'ShinW
2013-04-17 15:09
2013.09.29
Data Mining/Поиск непойми чего в неизвестных таблицах, столбцах





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский