Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Использование DevExpress

Автор: Darl
Дата сообщения: 05.08.2005 11:51
Alex1978

Лучше думаю найти другой способ решить то что ты хочешь
Автор: Alex1978
Дата сообщения: 05.08.2005 13:03
Darl
Так ведь не получается. А исходники править под себя не люблю.
Автор: Darl
Дата сообщения: 05.08.2005 15:29
Alex1978

Ну напр.

void __fastcall TMainForm::cxTreeTypeCanSelectNode(TObject *Sender,
TcxTreeListNode *ANode, bool &Allow)
{
Allow = ANode->Level;
}

void __fastcall TMainForm::cxTreeTypeFocusedNodeChanged(TObject *Sender,
TcxTreeListNode *APrevFocusedNode, TcxTreeListNode *AFocusedNode)
{
cxTreeType->OptionsSelection->MultiSelect = !AFocusedNode->Level;
}
Автор: Alex1978
Дата сообщения: 05.08.2005 17:12
Darl
Списибо за помощь, но по последнему посту
Что толку то. Ты на окончание посмотри FocusedNodeChanged.
Implement the OnFocusedNodeChanged event handler to provide custom code after focus has switched to another node.

The Sender parameter specifies the TreeList control generated this event.
The APrevFocusedNode parameter specifies the node that has lost focus. This parameter returns nil value if there was no focused node before.
The AFocusedNode parameter specifies the node that has gained focus.

Прикинь если при смене узла серьезная операция? ты ее дважды отработаешь.
Нельзя в OnFocusedNodeChanged мультиселект менять - поздно уже.
Автор: Darl
Дата сообщения: 05.08.2005 21:19
Alex1978

Я к тому что ищи другие способы.... чем зацикливаться на одном CanSelectedNode, ну или пиши в аську(274055231).
Автор: Alex47
Дата сообщения: 06.08.2005 11:29
Alex1978

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


1. Когда MultiSelect = False, понятия Selected и Focused становятся равнозначными. Только один node может быть selected (он становится focused), и, наоборот, focused node автоматически становится selected.
Поэтому, когда кодом:

procedure TMainForm.trlMainFocusedNodeChanged(Sender: TObject;
APrevFocusedNode, AFocusedNode: TcxTreeListNode);
begin
if APrevFocusedNode<> nil then
if (AFocusedNode <> nil) and (AFocusedNode.Level = 0) then
APrevFocusedNode.Focused := True;
end;

фокус возвращается на APrevFocusedNode, он (APrevFocusedNode) автоматически становится selected и других selected больше нет.
2. В самом факте того, что мы даем возможность кратковременно перевести фокус на "нежелательный" node и сразу же убираем его, ничего плохого нет. Для обработчика FocusedNodeChanged это штатная ситуация, то есть он предназначен, в том числе, и для этого. На производительности "нормальной" программы это не сказывается.
Автор: Rustamd
Дата сообщения: 10.08.2005 06:50
Помогите проинстоллить девки для D7,
скачал сорсы с китайского сайта h..p://www.softsky.com.cn/show.asp?id=426
т.к. там написано, что версия QuantumGrid 5.7.
Компилирую
dxThemeD7.dpk за тем
cxLibraryVCLD7.dpk, потом
dclcxLibraryVCLD7.dpk и когда стараюсь последний проинстоллить ошибка:
"The procedure entry point @Dxoffice11@initialization$qqrv could not be located in the dynamic link library dxThemeD7.bpl!"

В чем проблема и как ее решить или обойти?
rustam_d@mail.ru
Автор: Alex47
Дата сообщения: 10.08.2005 07:41
Rustamd
Лучше поставить последнюю версию:
http://forum.ru-board.com/topic.cgi?forum=35&topic=26514
Автор: Rustamd
Дата сообщения: 10.08.2005 08:01
Alex47
Пока разберусь как качать неделя пройдет.
Можете последнюю версию "\XP Theme Manager\Sources" выслать?
на rustam_d@mail.ru.
Автор: golkanavt
Дата сообщения: 10.08.2005 10:56
Rustamd
смотри почту
Автор: Rustamd
Дата сообщения: 10.08.2005 11:13
Получил с обменника последнюю версию инсталляшки из 2 частей,
но там же пароль нужен?
Alex47 можете выслать?
Автор: GloThin
Дата сообщения: 10.08.2005 20:51
Rustamd

Цитата:
но там же пароль нужен?

Конечно нужен...
Как без него?
Необходимое тебе здесь
#
Автор: Alex1978
Дата сообщения: 11.08.2005 10:28
Как узнать что в гриде выделено: заголовок группы или запись?
Нужно получить некоторые данные из выделенных записей и при этом отсеять выделленные заголовки групп, иначе получается дубль.

procedure TMainForm.brcFileExportClick(Sender: TObject);
var
S: String;
I: Integer;
ARowIndex: Integer;
ARowInfo: TcxRowInfo;
begin
S := '';
with MainDM do
begin
tbZbur.DisableControls;
with tbvZbur.DataController do
for I := 0 to GetSelectedCount - 1 do
begin
ARowIndex := GetSelectedRowIndex(I);
ARowInfo := GetRowInfo(ARowIndex);
S := S + GetDisplayText(ARowInfo.RecordIndex,0) + ',';
end;
tbZbur.EnableControls;
end;
end;

Вот такой код если выделен заголовок группы и три записи с номерами 1,2,3 возвращает
1,1,2,3 как этого избежать? В хелпе отчего-то натыкаюсь на "дополнительные сведения отсутсвуют".
Автор: tibotaka
Дата сообщения: 11.08.2005 11:23
You can try:
...
<aRow>.IsData - to determine whether a particular row is a data row or a group row;
...

Maybe it will help...

tibotaka
Автор: golkanavt
Дата сообщения: 11.08.2005 11:47
Alex1978
либо классически:

Код: ViewData.Rows[RowIndex].ClassName = 'TcxGridGroupRow'
Автор: vmr90
Дата сообщения: 13.08.2005 19:06
Как запретить BandClick и HeaderClick v Gride??? Спасибо!
Автор: Alex47
Дата сообщения: 13.08.2005 22:14
vmr90
Один из вариантов - поставить (к примеру, для HeaderClick) в обработчике соответствующей колонки OnHeaderClick:
sysutils.Abort;
Автор: vmr90
Дата сообщения: 14.08.2005 08:41
Alex47
спасибо так и сделаю а есть и 2-вариант?
Автор: Alex47
Дата сообщения: 14.08.2005 09:52
vmr90
Если нужен запрет для всех колонок, то можно таким же образом использовать обработчик View OnColumnHeaderClick
Автор: mln141
Дата сообщения: 18.08.2005 09:28
Столкнулся со следующей проблемой (использую последних девок в BCB 6):
cxGrid - 2 уровня с 2 таблицами (контракты и операции по ним) - на нижнем уровне отображается только часть записей. БД на аксессе. Кто-нибудь знает как вылечить?
Автор: golkanavt
Дата сообщения: 18.08.2005 13:02
mln141
у датасета соотнесенного к детали данные должны быть отсортированы по ключу мастера ну и ессно должны быть выставлены ключевые опции во вьюхах:

DataController->DetailKeyFieldNames
DataController->KeyFieldNames
DataController->MasterKeyFieldNames
Автор: mln141
Дата сообщения: 18.08.2005 15:57
golkanavt
Это понятно, я все это проверил, но из 8 соответствующих записей показывает только 6.
Автор: mln141
Дата сообщения: 19.08.2005 10:11
golkanavt
Вобщем решить проблему удалось, но через ж. Вместо таблицы подключил источником данных очередь (все поля + сортировка по ключу связи с верхним уровнем).
Автор: stalker780
Дата сообщения: 30.08.2005 17:36
А никто не сталкивался, где находится свойство, возвращающее версию компонентов?
Хочу сделать в окошке About версию используемых Баров, Гридов и пр., ибо компоненты обновляются довольно часто, а по бинарнику не всегда поймешь на какой версии он откомпилен
Нашел например в dxBarReg есть
const
dxBarVersion = '5.4';
но с ней не компилится, ругается на DesignIntf.

Мож кто сталкивался, поможите. Не критично но интересно
Автор: Alex47
Дата сообщения: 31.08.2005 09:45
stalker780
1. Версию в design-time, как известно, можно узнать по правой кнопке в
контекстном меню через Delphi property editor, который не доступен в run-time.
2. Если инсталляция DevExpress была штатная, то информация о версиях пишется в
HKEY_LOCAL_MACHINE\SOFTWARE\Developer Express Inc\AProductName (AIDEName AIDEVersion). Есть утилита VersionCheck, которая "Checks and displays the version numbers of the installed DevExpress components". Она создает и сохраняет отчет, который можно было бы использовать (http://www.freedevexpressaddons.com).
Но, поскольку, информацию она берет из registry, то, видимо, будет работать только со штатным инсталлятором (я не проверял).
3. По поводу наличия соответствующих свойств - информации нет, можно поискать в исходниках.
Автор: pit77
Дата сообщения: 01.09.2005 16:15
Есть, что-то типа DBGrid, связанное с базой данных из линейки DevExpress только умеющего делать поиск по каждому столбцу задавая условия, имеющего автофильтр по каждому столбцу и выделения строк по заданным условиям ...
Автор: Linch
Дата сообщения: 02.09.2005 00:58
Возникла такая проблема, при использовании devexpress winforms в моей программе, я не могу её запустить на другой машине и вылетает ошибка. Я так подозреваю это из за того что я использую не стандартные контролы (Devexpress в данном случае).
Как можно решить эту проблему?
Автор: Alex47
Дата сообщения: 02.09.2005 07:56
pit77
ExpressQuantumGrid (текущая версия 5.9)
Информация на //www.devexpress.com
Автор: pit77
Дата сообщения: 02.09.2005 12:29
Alex47
Спасибо за информацию.
Автор: Alex1978
Дата сообщения: 04.09.2005 10:57
Необходимо при некотором условии, объединить в одной строке две ячейки грида. Это реально? Эсли да то плз. подскажите как реализовать сабж.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Kylix


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.