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

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

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

ShIvADeSt (31-12-2009 04:49): Продолжаем тут http://forum.ru-board.com/topic.cgi?forum=33&topic=10884  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

golkanavt



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

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




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

Всего записей: 1069 | Зарегистр. 08-04-2002 | Отправлено: 10:31 07-02-2009 | Исправлено: vladman, 14:36 24-10-2009
vladman

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

Цитата:
Поставил, все равно не фурычит

Странно, должно "фурычить". А на поле есть какой-то редактор?
Для эксперимента можно воспользоваться еще одним подходом, но он немного не удобен в том плане, что  пользователям для перевода ячейку в статус редактирования необходимо будет нажимать F2, или то, что вы им предложит как альтернативу:
Кроме обработки события onCellDblClick, обработайте еще событие onCellClick
procedure <YourForm>.<YourcxGridDBTableView>CellClick(Sender: TcxCustomGridTableView; ACellViewInfo:
    TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
  AHandled := True;
end;

Всего записей: 708 | Зарегистр. 13-11-2002 | Отправлено: 19:08 06-10-2009
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
vladman
Ну DblClick проходит один раз из двадцати наверное.
А так, в принципе ничего особенного не было нужно, нужно было когда надо скопировать одну ячейку, а не все (посмотрел по исходникам, такое может быть только при установке CellMultiSelect, а это не устраивает в принципе. Точно так же как и всех не устраивало, когда по Ctrl+C копировало всю Row (все столбцы буфер обмена). А DblClick - нужен для выбора текущего договора клиента и показа уже счетов, привязанных к договору клиента.
Вообщем плюнул, поставил что нельзя редактировать в табличке и перехватил Ctrl+C в обработчике и написал следующее:

Код:
 
Var
  Value: Variant;
Begin
  Value := TableView.Controller.FocusedItem.FocusedCellViewInfo.Value;
  SetClipboardText(VarToStr(Value));
 

Так и DblClick работает, и копирует когда мне надо и что мне надо.

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 19:15 06-10-2009
vladman

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

Цитата:
Ну DblClick проходит один раз из двадцати наверное.  

Это вы попадаете на границу (рамку) ячейки. А так как граница ячейки это уже не редактор ячейки, то DblClick и отрабатывает.

Всего записей: 708 | Зарегистр. 13-11-2002 | Отправлено: 19:23 06-10-2009
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
vladman
НУ да, именно так
Еще по индикатору DblClick отрабатывает.

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 19:25 06-10-2009
ant0ni02004

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cryogen2003
 
перепутал, в 3м гриде RowSelect тоже был
а в 6м - OptionsSelection.CellSelect

Всего записей: 442 | Зарегистр. 26-10-2004 | Отправлено: 19:40 06-10-2009
JohnSilver182



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

Цитата:
procedure <YourForm>.<YourcxGridDBTableViewDateColumn>GetDataText(Sender: TcxCustomGridTableItem; ARecordIndex: Integer; var AText: string);
begin
  AText := FormatDateTime('dd/mm/yy', StrToDate(AText));
end;  

Как же все сложно !!!
StrToDate(AText)  не канает (формат даты не тот) . Пока сделал  Atext:=copy(atext,1,5);
 
 Atext:=copy(atext,1,5);
   //FormatDateTime('dd/mm/yy', StrToDate(AText));
 
Добавлено:
vladman
О великий шаман !  Я придумал как сделать  отступ от края ячейки !!!!!
 
procedure TFormSprav.cxGridTVOneColumn3GetDataText(
  Sender: TcxCustomGridTableItem; ARecordIndex: Integer;
  var AText: String);
begin
 Atext:=AText+' ';
end;
 
З.Ы. А кто пробовал без исходников сделать   cxGridCellTextOffset:= 2; ?????

Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 19:58 06-10-2009 | Исправлено: JohnSilver182, 20:09 06-10-2009
vladman

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

Цитата:
StrToDate(AText)  не канает (формат даты не тот)  

Ну так скажите какой у вас формат даты. Да и мой пример это не истина в последней инстанции, а, скорее всего, направление в котором можно покопать .
К слову, этот пример помог вам "придумать как сделать  отступ от края ячейки".

Цитата:
Я придумал как сделать  отступ от края ячейки !!!!!  

Тоже вариант, но обработка OnCustomDrawCell думаю, что будет, может не проще, но правильнее.

Всего записей: 708 | Зарегистр. 13-11-2002 | Отправлено: 20:23 06-10-2009
mdid

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
драсте..первый раз юзаю dev посему звиняйте за тучу вопросов..ибо третий час топчусь на одном месте (cxGrid)
 
1. как программно добавить строку?
2. можно ли делать колонки одна под другой?именно колонки - нашел
3. Можно ли добавить кнопку в строку колонки? именно средствами девы - нашел
4. возник в связи с вопросом 2 Можно ли как то скрыть  Bands но оставив видимые колонки?
 
в общем все нашел

Всего записей: 1298 | Зарегистр. 13-02-2006 | Отправлено: 01:10 07-10-2009 | Исправлено: mdid, 02:35 07-10-2009
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ant0ni02004
Секунду, а если выключить CellSelect, то тогда вообще нельзя выбрать даже строчку или одну ячейку.

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 09:22 07-10-2009
TORSER7

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
К вопросу об ошибке в TcxDateEdit (стр.83,84)
 
Поставил новую (46) версию DE - и все нормально.Так что глюки в 35 версии  
таки были и их исправили.
Спасибо всем,кто откликнулся !
 
 
А теперь вопрос об русских ресурсах для версии 46. Как их подключить ?

Всего записей: 15 | Зарегистр. 30-09-2009 | Отправлено: 12:33 07-10-2009
Cryogen2003



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

Код:
 
ResourceStream:= TResourceStream.Create(HInstance, <YourNameResource>, RT_RCDATA);
  cxLocalizer1.LoadFromStream(ResourceStream);
  cxLocalizer1.LanguageIndex := 1049;
  cxLocalizer1.Active := True;
 

И подключить файл с ресурсами, который идет в поставке от feandy

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 12:37 07-10-2009
TORSER7

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

Всего записей: 15 | Зарегистр. 30-09-2009 | Отправлено: 13:45 07-10-2009
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
TORSER7
Да не за что
 
Добавлено:
Есть TcxLookupComboBox, как можно некоторые элементы подсвечивать чем-нибудь или подскажите другой компонент с такой возможностью?

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 14:03 07-10-2009
JohnSilver182



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А я вроде видел что как то на лету можно русифицировать . Есть такое ?????

Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 18:55 07-10-2009 | Исправлено: JohnSilver182, 19:05 07-10-2009
xokc

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

Всего записей: 477 | Зарегистр. 22-09-2002 | Отправлено: 19:34 07-10-2009
vladman

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

Цитата:
Есть TcxLookupComboBox, как можно некоторые элементы подсвечивать чем-нибудь или подскажите другой компонент с такой возможностью?

В TcxLookupComboBox, скорее всего, нет достаточно простого метода решения данной проблемы. Посмотрите в сторону TcxExtLookupComboBox у которого есть свойство Properties.View в качестве которого можно указать некий cxGridDBTableView в котором, в свою очередь, обработав событие OnCustomDrawCell, вы сможете добиться нужного вам результата.
 
 
Добавлено:
JohnSilver182

Цитата:
А я вроде видел что как то на лету можно русифицировать . Есть такое ?????

Если вы имели ввиду процедуру cxSetResourceString, что-то вроде этого
cxSetResourceString(@scxGridNoDataInfoText,'<Нет данных для просмотра>');,
тогда, да, есть.

Всего записей: 708 | Зарегистр. 13-11-2002 | Отправлено: 23:18 07-10-2009
JohnSilver182



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

Цитата:
Если вы имели ввиду процедуру cxSetResourceString, что-то вроде этого
cxSetResourceString(@scxGridNoDataInfoText,'<Нет данных для просмотра>');,
тогда, да, есть.

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

Всего записей: 829 | Зарегистр. 03-06-2009 | Отправлено: 00:31 08-10-2009
f3ka

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
JohnSilver182
по моему тогда лучше взять cxLocalizer...  
 
Добавлено:
JohnSilver182
плюс к тому же на 3 поста выше вашего первого поста про руссификацию был предложен вариант на такой же вопрос...

Всего записей: 497 | Зарегистр. 02-03-2007 | Отправлено: 08:40 08-10-2009 | Исправлено: f3ka, 08:43 08-10-2009
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
vladman
Ок, сейчас попробую посмотреть в сторону компонента TcxExtLookupComboBox. Надеюсь подойдет

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 09:37 08-10-2009
X11



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приветствую всех.
У меня проблема с dxBarManager. А точнее с отображением иконок в главном меню.
Есть 2 панели. Одна из них - главное меню.
Для хранения иконок использую cxImageList, где высота и ширина = 24. В cxImageList загружены иконки размером 24х24 в формате png.
 
Иконки в главном меню как бы наезжают друг на друга.
   
 
Вот настройки из диспетчера свойств:
   
 
Так тоже пробовал
   
 
Ничего не помогает.
 
 
 
Дело в том, что есть другая форма. Там тоже есть dxBarManager с панелью и главным меню.
Там пункты меню отображаются хоть и слишком большими, но за то иконки не наезжают друг на друга.
   
 
На этой форме использую для хранения иконок также cxImageList, где высота и ширина тоже = 24. Но в этот cxImageList загружены иконки ICO. Если в ACDSee открыть эту иконку, то там будет несколько, от 16х16 до 128х128.
 
Вообще можно нормально настроить вид пунктов меню и иконок в главном меню?
 
Забыл добавить. Dev 43.
 
Добавлено:
Отредактировал сообщение, перекинул снимки на другой сервис, а то ipicture лежит.
 
Добавлено:
Ещё одна проблема с главным меню у dxBarManager.
Лежит на форме несколько компонентов. У них Align := alTop. Щёлкаю правой кнопкой мышки по dxBarManager, выбираю пункт добавления главного меню. Появляется главное меню. только его никак нельзя установить в вверх окна, пока у всех компонентов не уберёшь Align := alTop.
Dev43
 
Добавлено:
Кривое решение моей предыдущей проблемы.
Удаляем главное меню. Настраиваем dxBarManager на нужное отображение иконок. Теперь только можно создавать главное меню. ПМСМ - недоработка у девочек.
 
Добавлено:
Извиняюсь, поспешил я. Как только создаёшь пункт меню, сразу меню уменьшается и иконки по прежнему наезжают друг на друга (находят очень близко к другу).

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

Всего записей: 3253 | Зарегистр. 24-11-2005 | Отправлено: 10:53 08-10-2009 | Исправлено: X11, 11:57 08-10-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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Использование DevExpress (часть 3)
ShIvADeSt (31-12-2009 04:49): Продолжаем тут http://forum.ru-board.com/topic.cgi?forum=33&topic=10884


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru