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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

Открыть новую тему     Написать ответ в эту тему

FreePaul



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А никто не пвтался установить последнюю бесплатную версию 3.6 под свежие Delphi?

----------
Восход Солнца - это хорошо для начала...

Всего записей: 932 | Зарегистр. 07-08-2002 | Отправлено: 06:26 09-11-2021
Samotek

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет!
EHLib. Использую RowDetailPanel. Как сделать, чтобы компоненты, лежащие на ней выравнивались относительно RowDetailPanel при изменении размера этой панели? Что-то вроде RowDetailPanel.OnResize.

Всего записей: 2434 | Зарегистр. 18-05-2005 | Отправлено: 18:54 15-04-2022
w341kj

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
два вопроса.
 
1. Как зарегистрироваться на официальном форуме ?
 
2. У Grid'a есть фича переноса строк, но я не нашёл фичу переноса одной строки не разделенной пробелами, то есть если строка разбита пробелами она переносится по пробелам, а если она цельная(без пробелов) и не влазит в ячейку то она не переносится,
а тупо заканчивается на границе ячейки. Вопрос: А есть ли варианты переноса цельной строки без колхоза ?

Всего записей: 157 | Зарегистр. 06-03-2021 | Отправлено: 13:43 23-04-2022
Samotek

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

Цитата:
А есть ли варианты переноса цельной строки без колхоза ?

Без колхоза нет, а с колхозом есть событие DataSet.OnGetText

Всего записей: 2434 | Зарегистр. 18-05-2005 | Отправлено: 13:53 23-04-2022
zealotfan



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос к знатокам. В Lazarus в DBDateTimeEditEh вношу значение и при изменении фокуса на другой контрол значение очищается. Попробывал поставить значение по умолчанию при создании формы, так вот при изменении и последующем переходе на другой элемент значение восстанавливается на то, которое было по умолчанию при создании формы. В демонстрашке тоже самое

Всего записей: 234 | Зарегистр. 25-02-2016 | Отправлено: 10:01 03-06-2022
w341kj

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Оцените функцию:
 
Функция возвращает кол-во выделенных записей в DBGridEh, будь это выделение только ячейки или всей строки, и возвращает список выделенных записей.
 
Пощу, на всякий случай мож кому пригодится, а мож кто скажет что есть что-то лучше.
 

Код:
function GetDBGridEhSelectedRecords(const DBGridEh: TDBGridEh; var RecArray : TArray<Integer>): Integer;
var i: Integer;  isSingleCell: Boolean;
begin
 
    // If full row selection
   if DBGridEh.Selection.Rows.Count > 0 then
   begin
      DBGridEh.DataSource.DataSet.DisableControls;
        for i := 0 to DBGridEh.Selection.Rows.Count-1  do
        begin
          DBGridEh.DataSource.DataSet.GotoBookmark( DBGridEh.SelectedRows.Items[i] );
          RecArray := RecArray + [DBGridEh.DataSource.DataSet.RecNo];
        end;
      DBGridEh.DataSource.DataSet.EnableControls;
      Result := Length(RecArray);
      exit;
   end;
 
   // if cell selection
   DBGridEh.DataSource.DataSet.DisableControls;
   isSingleCell := DataSetCompareBookmarks(DBGridEh.DataSource.DataSet,
                                           DBGridEh.Selection.Rect.BottomRow,
                                           DBGridEh.Selection.Rect.TopRow) = 0  ;
 
   DBGridEh.SaveBookmark;
   DBGridEh.DataSource.DataSet.Bookmark := DBGridEh.Selection.Rect.TopRow;
   while True do
   begin
    RecArray := RecArray + [DBGridEh.DataSource.DataSet.RecNo];
    if isSingleCell then Break;
 
    if DataSetCompareBookmarks(DBGridEh.DataSource.DataSet,
                               DBGridEh.Selection.Rect.BottomRow,
                               DBGridEh.DataSource.DataSet.Bookmark) = 0 then Break;
 
    DBGridEh.DataSource.DataSet.Next;
    if DBGridEh.DataSource.DataSet.Eof then Break;
   end;
   DBGridEh.RestoreBookmark;
 
   DBGridEh.DataSource.DataSet.EnableControls;
   Result := Length(RecArray);
end;
 
 

Всего записей: 157 | Зарегистр. 06-03-2021 | Отправлено: 01:14 16-08-2022
FreePaul



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте!
Как я понял по форуму EhLib, похожая ошибка периодически возникает у разных людей, но разработчики упрямо не хотят добавить обработчик события к примеру OnFilterError.
Суть:
Имеется ADO-подключение к Active Directory. В ADOQuery отбираются Ф.И.О., отдел, должность и телефон. Все это отображается в DBGridEh. Там же настроено свойство SearchPanel, в котором так же настроено FilterOnTyping:=True. Строка поиска показывается постоянно.
При вводе на английском языке какого-либо значения для поиска по всей "БД", получаем сообщение об ошибке: "Project <ИмяЕхе> raised exception class EVariantTypeCastError with message 'Could not convert variant of type (Null) into type (OleStr)'"
Если перед вводом переключиться на Русский, все нормально ищется. Что, собственно, и неудивительно - все сведения в выбираемых полях (кроме телефонов) - на "великом и могучем".
Дополнение: подобная же ошибка выходит при вводе значения для поиска на Русском, если искомого значения нет в результатирующем наборе данных. К примеру, если ввести "иванов" - все нормально. Но если ввести "ивн" (пропустить "по запарке" одну букву) - получаем такую же ошибку.
Можно ли как-то подавить вывод этого сообщения об ошибке? Пусть бы, к примеру, пользователь в этом случае получал пустой набор данных.

 
Разобрался. В обработчике AfterScroll для ADOQuery было прописано вытягивание данных и их внесение в Label (данные не отображаются в DBGridEh). Убрал оттуда все - ошибка ушла.

----------
Восход Солнца - это хорошо для начала...

Всего записей: 932 | Зарегистр. 07-08-2002 | Отправлено: 06:51 22-08-2022 | Исправлено: FreePaul, 04:06 23-08-2022
w341kj

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

Всего записей: 157 | Зарегистр. 06-03-2021 | Отправлено: 10:34 22-08-2022
Открыть новую тему     Написать ответ в эту тему

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Ehlib


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru