Решение проблем с EhLib

Stronger

Турист
Как в DbgridEh сделать фильтр с списками как в Ексель?
У меня датасет IbClientDataset.
 

Antoskast3

Турист
Люди, всем доброго времени суток!
Вдруг у кого есть Help для EHLib на русском языке да и не жалко, то буду признателен за ссылочку.
 

t34

Турист
В UpdateHotTackInfo неверно определяется количество колонок

В UpdateHotTackInfo неверно определяется количество колонок, если есть закрепленные Это приводит к access violation. Отключение dghHotTrack не помогает, так как метод вызывается и при отключенном dghHotTrack. Надо добавить выход из метода, если dghHotTrack отключен.

unit DBGridEh;
...
procedure TCustomDBGridEh.UpdateHotTackInfo(X, Y: Integer);
...
begin
if not (dghHotTrack in OptionsEh) then //<--iid
exit;
 

ant32

Турист
Наткнулся на проблему (в Ehlib) в версии - v4.5.62
В функции SaveDBGridEhToExportFile (экспорта данных) для форматов HTML и RTF
(TDBGridEhExportAsHTML, TDBGridEhExportAsRTF) FastMM4 сигнализирует о небольшой утечке памяти (провидимому не полностью освобождаются ресурсы в TList).
 

sdima85

Турист
Доброго времени суток!
Кто-то знает как в список фильтра (DBGridEh1.STFilter) добавить свое значение например «Условие…», и при выборе его выполнить что-нибудь?
 

sdima85

Турист
Уже добавили в версии 5.1

+ The interface of droped down list of SubTitleFilter was changed. Now it is allowed to select requaried values in the list unsing checkboxes. The Item (Custom...) was added in the list of commands of filter droped down list. When selected, the simple filter dialog appeares to enter filter expression.

+ When the list of items for droped down filter list is formed, the current filter takes in account (Only when grid is conneccted to TMemTableEh).

+ New event added in Grid (TDBGridEh.OnFillSTFilterListValues), in the grid column (TColumnEh.OnFillSTFilterListValues) and in the TDBGridEhCenter (TDBGridEhCenter.OnFillSTFilterListValues). You can use event to fill list of droped down list of STFilter cell.
 

alex_ss1

Турист
Еще заметил глючок. Если задать отображение номера записи для грида, то при каких-то условиях (не могу найти закономерность - разные гриды и глюк не на всех появляется) номера записи не показываются - ширина колонки в ИДЕ - нормальная - все отображается, и индикатор, и номер записи, в рантайме ширина колонки почему-то меньше и соотв. номер записи усекается.
Я тут поковырялся в исходнике DBGridEh.pas, кому будет интересно:

function TCustomDBGridEh.CalcIndicatorColWidth: Integer;
...
if FDataLink.Active
then ARecordCount := FDataLink.DataSet.RecordCount
else ARecordCount := 0;
ARecordCount := ARecordCount div 10;
WidthText := '0'; !!! сделал '00' и номера записей не усекаются!
for i := 0 to 100 do
...


Но с шириной все равно какие-то бока. Сначала, как только открываю окно с DBGrid - все ок. А потом стоит кликнуть на title (автосортировка) и номера сдвигаются влево на несколько пикселей и ширина колонки с номерами становится меньше. Этот глюк хорошо видно, если записей больше 9, т.е. число их 2-х цифр и выше. Вышеуказанный код позволяет сделать так, чтобы номера не усекались (ширина колонки с номерами становится больше), но после клика - ширина колонки всеравно почему-то немного уменьшается.
 
Last edited by a moderator:

badamushto

Турист
Никто не сталкивался с такой проблемой?...ehlib версия 5002, когда пытаешься на column грида повесить readonly вылетает violation, с более старой версией все работало...
 

alex_ss1

Турист
Кстати в этой же версии (5.0.13) заметил глючок. Открыл как-то раз dbgrid и все строки стали высотой где-то по 2 пикселя, вобщем ужас..я закрыл и снова открыл - все ок. В чем прикол - не понял. Ошибка появилась 1 раз и 2-й раз появляться не хочет. Может кто сталкивался с таким?
 
Top