freepascal.ru • Просмотр темы - Доработки Rx
 

Доработки Rx

Модераторы: alexs, Модераторы

Re: Доработки Rx

Сообщение alexs » 30.03.2018 19:56:05

Посмотрим.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3660
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Доработки Rx

Сообщение alexs » 05.04.2018 12:12:49

Смотри версию 6291.
Так устроит?

PS
Вот не нравится мне, как реализовано это окно фильтрации. Надо бы переписать.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3660
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Доработки Rx

Сообщение kit » 07.04.2018 09:13:35

alexs писал(а):Так устроит?

Пока да. ) Спасибо!
kit
постоялец
 
Сообщения: 141
Зарегистрирован: 29.09.2016 09:39:07

Re: Доработки Rx

Сообщение VirtUX » 23.04.2018 20:38:41

Хочу выразить благодарность за RxDateEdit. Стандартный DateEdit не работает под Mac OS X. А Ваш работает норм. Единственное пожелание, добавить в него свойство DateFormat (не нашел в компоненте), чтобы можно было указывать для каждого отдельно формат вывода.
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 828
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: Доработки Rx

Сообщение alexs » 24.04.2018 10:36:06

А в чём необходимость задания формата индивидуально?

Сейчас там все берётся настройки из системы. На мой взгляд - это правильно. Не хорошо - когда ваша программа на рабочем месте ведёт себя не так, как все остальные программы и сама система. Или в Mac OS X совсем экзотические форматы? :-)
Там ещё есть настройка на кол-во знаков при отображении года - YearDigits.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3660
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Доработки Rx

Сообщение VirtUX » 24.04.2018 13:17:31

Кстати про YearDigits. Пока не укажешь явно количество знаков, то в свойстве Text абракадабра при выбранном параметре "показывать текущую дату по умолчанию".
Если не корректировать формат, то по умолчанию (по крайней мере в Mac OS X) дата в компоненте выглядит ММ/ДД/ГГ. При этом в настройках системы стоит ДД.ММ.ГГГГ. Поэтому задаю при старте основного потока:
Код: Выделить всё
  FormatSettings.DateSeparator:= '.';
  FormatSettings.LongDateFormat:= 'dd.mm.yyyy';
  FormatSettings.ShortDateFormat:= 'dd.mm.yy';

Но в некоторых фреймах программы нужен индивидуальный формат отображения. Поэтому приходится извращаться с переключением настроек FormatSettings перед выводом.
В принципе, я думаю это частный случай, так что можно и не добавлять такой параметр. Хотя в стандартном DateEdit он есть ;)
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 828
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: Доработки Rx

Сообщение alexs » 24.04.2018 13:44:11

VirtUX писал(а):Поэтому задаю при старте основного потока:

У меня вообще это штатное начало всех программ :-)
Ещё не забудь про:
Код: Выделить всё
  DefaultFormatSettings.ThousandSeparator:=' ';
  DefaultFormatSettings.CurrencyString:='р.';


VirtUX писал(а):Но в некоторых фреймах программы нужен индивидуальный формат отображения.

Там надо подумать. Там же ещё формат маски редактора завязан.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3660
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Доработки Rx

Сообщение kit » 03.05.2018 09:25:28

Можна сделать правильную сортировку дат в списке значений фильтра в таблице?

Код: Выделить всё
function CompareDates(List: TStringList; Index1, Index: Integer): Integer;
var
  d1, d2: TDateTime;
begin
  TryStrToDateTime(List[Index1], d1);
  TryStrToDateTime(List[Index], d2);
  Result := -CompareDate(d1, d2);
end;

procedure TRxDBGrid.FillFilterData;
...
  for i := 0 to Columns.Count - 1 do
  begin
    C := TRxColumn(Columns[i]);
    if C.Field.DataType = ftDate then begin
      c.Filter.ValueList.SortStyle := sslUser;
      C.Filter.ValueList.CustomSort(@CompareDates);
    end;
  end;
kit
постоялец
 
Сообщения: 141
Зарегистрирован: 29.09.2016 09:39:07

Re: Доработки Rx

Сообщение alexs » 03.05.2018 17:34:50

Можно.
Сделаю. Разберусь сначала с последними изменениями с LCL - там Grid и DBGrid немного поменяли интерфейсы. Надо дописать в соответствии с этим RxDBGrid.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3660
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Доработки Rx

Сообщение kit » 04.05.2018 09:18:41

Можна добавить возможность вернуть дефолтние значения длинни и сортировки колонок, напримор добавить кнопку Default на rxDBGridColumsForm?
kit
постоялец
 
Сообщения: 141
Зарегистрирован: 29.09.2016 09:39:07

Re: Доработки Rx

Сообщение alexs » 04.05.2018 11:57:28

Она нигде не сохранятся. Это только ещё один комплект переменных вводить для хранения?
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3660
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Доработки Rx

Сообщение kit » 05.05.2018 08:37:06

Проблема в том что если добавляю поле в таблицу то колонка в гриде добавляется в конец, может из-за Ini-файла, а нужно по середине. Приходиться вручную передвигать или что-то типа такого: IniPropStorage.EraseSections i DBGrid.Columns.Clear;
или в procedure TRxDBGrid.OnIniLoad(Sender: TObject);
...
if (ACount = FVersion) and (ACount = Columns.Count) then

или
if (ACount = Columns.Count) then // kit
C.Index := Min(FPropertyStorageLink.Storage.ReadInteger(S1 + sIndex, C.Index), Columns.Count - 1);
kit
постоялец
 
Сообщения: 141
Зарегистрирован: 29.09.2016 09:39:07

Re: Доработки Rx

Сообщение alexs » 07.05.2018 10:37:45

Если ты подключил сохранение настроек - то просто увеличь у грида номер версии - поле Version
Оно для этого предназначено.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3660
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Доработки Rx

Сообщение alexs » 08.05.2018 16:34:40

kit писал(а):Можна сделать правильную сортировку дат в списке значений фильтра в таблице?

Смотри ревизию 6396.

Хотел аналог сделать и для числовых полей - с наскока не получилось.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 3660
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Доработки Rx

Сообщение kit » 09.05.2018 08:58:23

Чем rxpopupnotifier лучше tpopupnotifier?
kit
постоялец
 
Сообщения: 141
Зарегистрирован: 29.09.2016 09:39:07

Пред.След.

Вернуться в RxLib

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

Рейтинг@Mail.ru