Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress 2

Модерирует : ShIvADeSt

ShIvADeSt (07-02-2009 14:53): Продолжаем тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=10123#1
 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DevExpress

Обмен опытом, обсуждение нюансов и решение проблем возникающих при использовании библиотеки компонент Developer Express




 
Сами прирученные компоненты частенько приходят на водопой сюда
 
DLL со скинами из библиотеки dxSkins, автор Ziltoid Подробнее... линк обновлен
Продолжение, начало тут
 

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 03:16 29-01-2007 | Исправлено: VitaliM, 15:47 24-11-2008
Ugrael

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день.
Есть Delphi, cxGrid.
В навигаторе нужно перехватить нажатие кнопок Next, Prior.
Не пойму как сделать. Во внешнем навигаторе все ок, но надо именно встроенный.
Дизайн, блин.

Всего записей: 4 | Зарегистр. 11-05-2006 | Отправлено: 12:30 06-02-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ugrael у cxGrida есть события нажатия кнопок Navigatora -  
TcxGridTableView.NavigatorButtons.OnButtonClick!
Вот его и надо отрабатывать... По индексу узнаем что за кнопка нажата, сами отрабатываем нажатие и ставится ADone = True если не надо дефолтного обработчика кнопок...

Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 13:38 06-02-2009
afiget



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
258268258
Поиск по справке по названию OnCustomDrawPartBackground.

Всего записей: 545 | Зарегистр. 31-12-2005 | Отправлено: 14:06 06-02-2009
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Было, в какой-то версии  скины грузились  все, затем в след версии  их вообще небыло. А уже в 38 или 39  появились, и стало возможным  загружать скины.

Т.е. я на форму кидаю скинконтроллер и там выбираю, какие скины должны попасть в экзешник и должны ли вообще попасть? Или при использовании скинконтроллера они все попадут, а если не используешь скинконтроллер, то не единого. Так?
 

Цитата:
ДЛЛ-ку поюзать

Ну это в новых проектах.
Тем более жаль, что никто больше не хочет разбивать скины по отдельным длл-кам

----------
/не мы такие, жизнь такая/

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 14:23 06-02-2009
Dmiro

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
X11
Я, например, делаю так.
1. Пакеты со скинами не инсталлирую.
2 При помощи dxSkinEditor.exe создал бинарный файл со скинами.
   Делается просто
     1) Сначала "File\New" - выбираешь первый скин - можно ввести русское наименование
     2) Затем n раз "File\Add skin to project" -  для всех скинов
     3) Сохраняешь в формате *.skinres
3 При старте программы вот этой строкой
dxSkinsUserSkinPopulateSkinNames(SkinFileName, dxBarListItem1.Items)
  запихиваю в меню имена скинов из созданного файла
4 Вот эти строки  
    if dxSkinsUserSkinLoadFromFile(SkinFileName,Value)  then
    begin
      dxSkinController1.SkinName := 'UserSkin';
      dxLayoutSkinLookAndFeel1.SkinName := 'UserSkin';
      cxLookAndFeelController1.SkinName := 'UserSkin';
      cxEditStyleController1.Style.LookAndFeel.SkinName := 'UserSkin';
    end;  
устанавливают выбранный скин
Value - строка с наименованием скина

Всего записей: 100 | Зарегистр. 15-04-2002 | Отправлено: 15:38 06-02-2009
Ugrael

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
f3ka

Цитата:
у cxGrida есть события нажатия кнопок Navigatora -  
TcxGridTableView.NavigatorButtons.OnButtonClick!
Вот его и надо отрабатывать...

 

 
я нашел такой вот способ, но почему то я туда не попадаю. не пойму где его вызывать:
(процедуру вписал ручками)
procedure TfModellingBPEditStep.cxGrid1DBBandedTableView1NavigatorButtonsButtonClick(
  Sender: TObject; AButtonIndex: Integer; var ADone: Boolean);
begin
if AButtonIndex = NBDI_NEXT then
  begin
    showmessage('');
    ADone := True;
  end;
end;
 

Всего записей: 4 | Зарегистр. 11-05-2006 | Отправлено: 15:43 06-02-2009 | Исправлено: Ugrael, 15:47 06-02-2009
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я попробовал в проекте отрубать ненужные скины, соответственно они ушли из списка юнитов, но проек-то не уменьшился. %(
Использование DLL - не решит проблему уменьшения всего приложения, т.к. к исполняемому файлу надо еще и DLL отдавать, выгода наверное если часто обновления делать основного модуля, а так без разницы.
Использование скинконтроллера вообще приводит к тому, что у форм не только пропадает кнопка закрытия, но и пункт системного меню подвешивает все приложение,  а ведь версия не очень древняя 40 от ноября 2008.

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 16:19 06-02-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ugrael
Во первых это событие происходит ВСЕГДА когда нажимается какая то кнопка навигатора... Отсюда делаем вывод что НЕТ СМЫСЛА вызывать этот метод где то в программе самостоятельно...
Только что проверил приведенный код и оказалось что он работает при клике на кнопку Next в навигаторе!
Так что думаю что возможно не назначен обработчик события у объекта GridTableView...
И еще одно замечание, навигатор у GridTableView умный и не дает давить кнопку Next если нету записей или запись последняя...

Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 16:38 06-02-2009
Ugrael

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
f3ka

Цитата:
Только что проверил приведенный код и оказалось что он работает при клике на кнопку Next в навигаторе!
Так что думаю что возможно не назначен обработчик события у объекта GridTableView...
И еще одно замечание, навигатор у GridTableView умный и не дает давить кнопку Next если нету записей или запись последняя..

 
такое впечатление, что мы говорим о разных вещах.
какое событые не назначено ? нет у GridView ничего похожего на ButtonClick ... тем более Navigator. Можешь чуть подробнее рассказать, как ты его добавляешь ? этот код ?
не работает, не пойму куда ... 8(
 

Всего записей: 4 | Зарегистр. 11-05-2006 | Отправлено: 17:22 06-02-2009
sldaac



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Я попробовал в проекте отрубать ненужные скины, соответственно они ушли из списка юнитов, но проек-то не уменьшился. %(  
Использование DLL - не решит проблему уменьшения всего приложения, т.к. к исполняемому файлу надо еще и DLL отдавать, выгода наверное если часто обновления делать основного модуля, а так без разницы.  
Использование скинконтроллера вообще приводит к тому, что у форм не только пропадает кнопка закрытия, но и пункт системного меню подвешивает все приложение,  а ведь версия не очень древняя 40 от ноября 2008.

 
по всем  модулям проидись, они автоматом во все прописываются.
Еще в списке компонентов отключи скины.

Всего записей: 721 | Зарегистр. 15-06-2005 | Отправлено: 17:24 06-02-2009
Dmiro

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
X11
Проблему с выводом на печать решил?
Я слегка поковырял и предлагаю шрифтом играться не в Grid1CustomDrawCell, а повесить на
GetContentStyle вьюка и создать необходимые стили. В этом случае всё ОК.
 
procedure TfmScanner.Grid1DBTableView1StylesGetContentStyle(
  Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
  AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
Var
 val  : boolean;
begin
  val := VarAsType(ARecord.Values[Grid1CP.Index], varBoolean);
 
  if val then
    AStyle := cxStyle13;
   
end;

Всего записей: 100 | Зарегистр. 15-04-2002 | Отправлено: 17:54 06-02-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ugrael

Цитата:
такое впечатление, что мы говорим о разных вещах.
какое событые не назначено ? нет у GridView ничего похожего на ButtonClick ... тем более Navigator. Можешь чуть подробнее рассказать, как ты его добавляешь ? этот код ?
не работает, не пойму куда ... 8(  

у GridView нету OnButtonClick, зато есть NavigatorButtons.OnButtonClick в СОБЫТИЯХ GridView... тем более выше ты написал

Цитата:
procedure TfModellingBPEditStep.cxGrid1DBBandedTableView1NavigatorButtonsButtonClick(
  Sender: TObject; AButtonIndex: Integer; var ADone: Boolean);  

как это появилось? если ты это сам написал, то повесь этот обработчик на NavigatorButtons.OnButtonClick у GridView.
навигатор у GridView вообще включен? если нет, то у GridView в OptionsView включи флаг Navigator.
может хоть это как то поможет...

Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 17:59 06-02-2009
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Dmiro, спасибо большое. Перепробую и работу со скинами и с печатью.
 
Добавлено:
Dmiro, получилось со стилями, теперь на предварительном просмотре тот же шрифт, что и в гриде.

----------
/не мы такие, жизнь такая/

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 19:58 06-02-2009
golkanavt



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Продолжаем здесь

----------
Shit happens...

Всего записей: 1069 | Зарегистр. 08-04-2002 | Отправлено: 10:32 07-02-2009
Radio_Kat

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
глюк

Всего записей: 26 | Зарегистр. 02-06-2006 | Отправлено: 12:13 07-02-2009 | Исправлено: Radio_Kat, 12:18 07-02-2009
Sufferer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо всем за подсказки по скинам. Поотрубал в пакетах и вычистил во всех модулях, вроде полегчало на 6 мегов.  
Есть тут люди, что активно работали с TdxFlowChart. Есть ряд вопросов которые хотелось бы обсудить.

Всего записей: 271 | Зарегистр. 21-07-2001 | Отправлено: 13:36 07-02-2009
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress 2
ShIvADeSt (07-02-2009 14:53): Продолжаем тут
http://forum.ru-board.com/topic.cgi?forum=33&topic=10123#1


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru