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

» Вопросы по Ehlib

Автор: miwa
Дата сообщения: 22.04.2014 15:47
Schnider
Я бы для начала смотрел события OnDragDrop/OnDragOver.
Автор: xpin2013
Дата сообщения: 22.04.2014 16:22
Подскажите, кто ни будь, пожалуйста, рисовал картинки в ячейках EhLib? Интересует именно рисование блобов в базе а не ImageList. У меня в гриде должны быть логотипы банков (красивенькие 32х32). Может события какие то нужно обработать? Заранее спасибо. Ещё интересует, смогу ли я PNG с альфа прозрачностью нарисовать, как это делать ума не приложу, красоты хочется, это очень важно, а с TCanvas я плохо разбираюсь. По идее - даже без PNG можно.
Автор: Schnider
Дата сообщения: 22.04.2014 17:00
miwa

Цитата:
Я бы для начала  смотрел события OnDragDrop/OnDragOver.

Оно позволяет делать Drag&Drop между гридами, а меня интересует в пределах одного
Автор: xpin2013
Дата сообщения: 22.04.2014 17:13
Schnider

Цитата:
Оно позволяет делать Drag&Drop между гридами, а меня интересует в пределах одного

А пару строк лень писать уже? Если не с того грида - то Accepted-=Фалсе
Автор: miwa
Дата сообщения: 22.04.2014 18:34
xpin2013
Как насчет демки DBGridEh.DrawBlobImagesInCell ?
Автор: xpin2013
Дата сообщения: 22.04.2014 19:16
miwa
У меня в демках не видел ей богу. А как папка называется?
Автор: miwa
Дата сообщения: 23.04.2014 12:07
xpin2013
Да так и называется - %EhLib%\Demos\DBGridEh.DrawBlobImagesInCell. Возможно от версии EhLib зависит, в какой то из более старых версий в Demos было значительно меньше всякого, чем сейчас.
Автор: alexssss1
Дата сообщения: 07.05.2014 10:11
Ребята, подскажите, пожалуйста, какими свойствами в DBGridEh выставляется цвет номера выделенной ячейки?! По-умолчанию он слишком светлый, можно его изменить?
Выбрано групповое выделение ячеек.
Версия Ehlib 5.6
ОС: Windows 8.1


Автор: miwa
Дата сообщения: 07.05.2014 13:29
alexssss1
Из разряда "пальцем в небо" - события OnDraw... и OnAdvancedDraw... смотрел? Все? Их там штук 6-8.
Автор: alexssss1
Дата сообщения: 07.05.2014 13:34
miwa
Смотрел, ну что-то не получается..
Автор: miwa
Дата сообщения: 07.05.2014 14:07
alexssss1
Ну, тогда IndicatorParams
Автор: alexssss1
Дата сообщения: 07.05.2014 14:24
miwa
буду благодарен, если выложите кусок кода, потому как разработчик говорит, что поменять нельзя. я думал, может есть лазейки.
Автор: xteam2005
Дата сообщения: 14.06.2014 05:53
Возникла небольшая проблема:
В компоненте VerticalGrid, при выборе любого значения параметра DropDownBox.ListSource, чернеет строка вот так ( картинка )
Это баг, или я что-то не так делаю?
Автор: xteam2005
Дата сообщения: 02.07.2014 19:05
Не исправлено в EhLib 6.3 Build 6.3.181
Автор: XPerformer
Дата сообщения: 02.07.2014 23:36
xteam2005
причем даже если переопределить

Код: procedure TForm65.DBVertGridEh1GetCellParams(Sender: TObject; Row: TFieldRowEh;
AFont: TFont; var Background: TColor; State: TGridDrawState);
begin
Background := clYellow
end;
Автор: xteam2005
Дата сообщения: 13.07.2014 04:17
XPerformer
Проблема в отрисовке. ячейка нормально отрисовывается, только когда активна.
Пока в качестве временной меры(исли вдруг разрабы исправят ошибку) убираю свойство DropDownBox.ListSource у неактивных ячеек как раз в процедуре DBVertGridEh1GetCellParams.
Автор: XPerformer
Дата сообщения: 13.07.2014 04:53
xteam2005
крайне находчиво
Не пытались у них на форуме об этом написать?
Автор: xteam2005
Дата сообщения: 13.07.2014 06:28
Я слегка нелицензионный пользователь...
И с первого взгляда, судя по форуму, техподдержка EhLib не очень активно работает.
Автор: XPerformer
Дата сообщения: 13.07.2014 06:36
а продукт подорожал
5 300 руб. для физлиц на 1 год
в прошлом году помнится было раза в 2 дешевле
Автор: xteam2005
Дата сообщения: 14.07.2014 02:45
В EhLib 6.3 Build 6.3.182 без изменений
Автор: relictus
Дата сообщения: 01.08.2014 09:42
Возможно ли реализовать в TDBGridEh выпадающий список цветов в виде полосок с разными цветами (или как-то еще "овизуалить" цвет), на основе целочисленных значений из поля БД?
Только недавно начал осваивать сей грид, а тут затык с вышенаписанным случился, помогите советом/примером, пожалуйста!
Автор: YuriyRR
Дата сообщения: 01.08.2014 13:48
я делал справочник

код там
procedure TKAT_DOL.DBGGetCellParams(Sender: TObject; Column: TColumnEh; AFont:
TFont; var Background: TColor; State: TGridDrawState);
begin
if Column.Index = 1 then Background := DM.STATUS.FN('COLOR').AsInteger;
end;
Автор: relictus
Дата сообщения: 01.08.2014 15:16
YuriyRR
Спасибо! А что подвязано на дропдаун кнопку столбца цветов?
Автор: YuriyRR
Дата сообщения: 01.08.2014 17:36
relictus
У меня TColorDialog;
procedure TKAT_DOL.DBGColumns1EditButtons0Click(Sender: TObject; var Handled:
Boolean);
begin
if DBG.EditorMode then
begin
DBG.EditorMode := False;
DBG.Refresh;
end;
CD.Color := DM.STATUS.FN('COLOR').AsInteger;
if CD.Execute then
begin
DM.STATUS.Edit;
DM.STATUS.FN('COLOR').Value := CD.Color;
DM.STATUS.Post;
DM.FTR.CommitRetaining;
DBG.Refresh;
end;
end;
Автор: deyatel1974
Дата сообщения: 09.08.2014 23:18
Как правильно сопоставлять выделенные в гриде строки с данными? Мне нужно пробежать в цикле кэшированные в MemTable данные соответствующие выделенным строкам.

Код: procedure TForm1.DBGridEhSelectionChanged(Sender: TObject);
var
I, F, K: Integer;
begin
for I := 0 to DBGridEh.SelectedRows.Count - 1 do begin
K := DBGridEh.SelectedRows.Items[I][0]; // тут нужно получить индекс строки в MemTableEh сответствующей выделенному
F := MemTableEh.RecordsView.MemTableData.RecordsList[K].Value[1, dvvValueEh]; // дальше обрабатываем даные из поля
end;
end;
Автор: Samotek
Дата сообщения: 09.08.2014 23:42
deyatel1974

Цитата:
Однако это не работает если порядок строк изменен сортировкой. Как правильно делать?

Пройдись так же по выделенным строкам, собери уникальные ключи записи в массив, а потом пройдись по этому массиву с Dataset.Locate(уникальный ключ). В этом случае текущий порядок будет безразличен.
Автор: landy
Дата сообщения: 10.08.2014 12:05
Samotek, смысл задачи (насколько я понял) в том и состоит, чтобы не ходить по датасету (это очень медленно), а выбрать нужные данные напрямую из MemTableEh.
Автор: Samotek
Дата сообщения: 10.08.2014 12:18
landy

Цитата:
смысл задачи (насколько я понял) в том и состоит, чтобы не ходить по датасету (это очень медленно), а выбрать нужные данные напрямую из MemTableEh.

А как можно выбрать данные из датасета и не ходить по нему? Такого не бывает. При использовании мемтабле или другой таблицы в памяти в основном скорость тратится на отображение перемещения гридом. Для этого надо использоавть пару dataset.Disblecontrols - dataset.enablecontrols, естественно в блоке try finaly
Автор: landy
Дата сообщения: 10.08.2014 14:54
Нет, MemTableEh предоставляет возможность один раз закачать все данные из датасета и обращаться к ним напрямую. Это позволяет значительно увеличить производительность при доступе к ним.
Автор: XPerformer
Дата сообщения: 10.08.2014 14:57
landy
вопрос терминологии - MemTableEh тоже датасет

Страницы: 1234567891011121314151617181920212223

Предыдущая тема: Конвертация char в ASCII код; c


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