Глюки rxDBGrid

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

Re: Глюки rxDBGrid

Сообщение alexs » 16.01.2018 14:59:49

1. Если не ошибаюсь - то там всегда будет clHighlightText. Это из TCustomGrid.PrepareCanvas. Я не переопределял поведение. Насчёт нового свойства - не уверено что оно нужно. И, кстати, логичнее тогда заводить свойство SelectedFont. Если уж управлять шрифтом выделенной ячейки - то управлять полностью.
2. Для отображения символа валюты - он должен быть в UTF8. А в винде он там по умолчанию в 1251. Это старая проблема FPC. Тема уже разобрана не раз на форуме. viewtopic.php?f=5&t=8093&p=85353#p85353
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4051
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Глюки rxDBGrid

Сообщение zoltanleo » 17.01.2018 20:42:28

alexs писал(а):И, кстати, логичнее тогда заводить свойство SelectedFont. Если уж управлять шрифтом выделенной ячейки - то управлять полностью.

вот собственно, его-то я и искал :)

А сложно будет такое свойство добавить? Или есть более приоритетные задачи? Ведь PrepareCanvas - разумно сидит в секции protected

alexs писал(а):Для отображения символа валюты - он должен быть в UTF8

как-то не лежит у меня душа менять системные настройки ОСи, даже во время работы программы.

А нельзя сделать опциональное включение отображения валюты в гриде? Вдруг мне в currency-полях приспичит хранить динары или тугрики, вместо рублей? :) Или вывод можно подавить, задав маску где-то?
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Глюки rxDBGrid

Сообщение alexs » 17.01.2018 21:57:15

zoltanleo писал(а):А сложно будет такое свойство добавить?

По мере возможности - сделаю.
zoltanleo писал(а):как-то не лежит у меня душа менять системные настройки ОСи,

Не ОСи. Это системные настройки программы. Я в том посте прям готовую процедуру дал. Достаточно её вызвать и установить переменные.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4051
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Глюки rxDBGrid

Сообщение zoltanleo » 17.01.2018 23:46:26

alexs писал(а): Я в том посте прям готовую процедуру дал. Достаточно её вызвать и установить переменные.

Поковырялся в сорцах sysinth.inc - наверное ты прав, возьму твой совет на заметку.

Пока подавил вывод CurrencyString в ячейке грида установкой RxColumn.DisplayFormat = '### ### ##0.00'. Негоже компоненту отображать то, что от него не просят :D
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Глюки rxDBGrid

Сообщение alexs » 18.01.2018 11:43:38

Я формат обычно выставляю в поле из DataSet-а. Тогда не нужно в каждом визуальном объекте выставлять формат (обычно есть связка RxDBGrid для отображения и DBEdit для редактирования данных).
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4051
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Глюки rxDBGrid

Сообщение zoltanleo » 18.01.2018 16:32:39

alexs писал(а):Я формат обычно выставляю в поле из DataSet-а.

я тут пока так выкрутился: выставил в меморидатасете тип поля ftFloat и и задал произвольное условие (в качестве эксперимента)
Код: Выделить всё
procedure TForm1.MDcurrGetText(Sender: TField; var aText: string;
  DisplayText: Boolean);
begin
  Application.UpdateFormatSettings:= False;

  if Sender.DataSet.RecNo mod 2 > 0
    then
      begin
        CurrencyFormat:= 2;
        ThousandSeparator:= ',';
        DecimalSeparator:= '.';
        CurrencyString:= '$';
      end
    else
      begin
        ThousandSeparator:= ' ';
        DecimalSeparator:= ',';
        CurrencyFormat:= 3;
        CurrencyString:= 'руб';
      end;

  aText:= FloatToStrF(Sender.AsFloat,ffCurrency,10,2);
end;


Забавный получился эффект :wink:
Вложения
04.png
04.png (6.82 КБ) Просмотров: 11423
example.7z
(58.67 КБ) Скачиваний: 420
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Глюки rxDBGrid

Сообщение zoltanleo » 19.01.2018 16:37:27

alexs писал(а):И, кстати, логичнее тогда заводить свойство SelectedFont. Если уж управлять шрифтом выделенной ячейки - то управлять полностью.

Я внес некоторые правки (r.6148), глянь аттач, плз
Изображение
Вложения
ScrShot28.png
selected_font_color.7z
тестовый проект
(59.36 КБ) Скачиваний: 404
filedifference.7z
файл с исправлениями
(2.67 КБ) Скачиваний: 404
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Глюки rxDBGrid

Сообщение zoltanleo » 24.01.2018 10:14:54

Alex, ты живой? :shock:
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Глюки rxDBGrid

Сообщение alexs » 29.01.2018 10:26:52

zoltanleo писал(а):Я внес некоторые правки (r.6148), глянь аттач, плз

Можно стандартный диф? который получается по svn diff
Сразу скажу - давай всёже я сделаю selectedFont. Можно будет не только шрифт менять, но и начертание.
zoltanleo писал(а):Alex, ты живой?

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

Re: Глюки rxDBGrid

Сообщение zoltanleo » 29.01.2018 11:00:04

alexs писал(а):Можно стандартный диф? который получается по svn diff

Так устроит?

Добавлено спустя 45 секунд:
alexs писал(а):давай всёже я сделаю selectedFont

тебе виднее :)
Вложения
selectedfont.7z
заплатка
(683 байт) Скачиваний: 417
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Глюки rxDBGrid

Сообщение alexs » 29.01.2018 11:50:04

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

Re: Глюки rxDBGrid

Сообщение zoltanleo » 29.01.2018 12:14:18

Я только "за" ;)
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Глюки rxDBGrid

Сообщение alexs » 30.01.2018 12:01:47

Готово.
Новое свойство - SelectedFont.
Пример работы также прилагается.
Ревизия 6156.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4051
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Глюки rxDBGrid

Сообщение zoltanleo » 30.01.2018 18:16:54

alexs писал(а):Готово

Спасибо, ночью или завтра утром опробую :)

Установил, проверил. Все тип-топ. Твой вариант гибче. :)
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Глюки rxDBGrid

Сообщение kit » 01.02.2018 14:26:19

Если RxColumn.Filter.Style = rxfstBoth то не показивает последнее значение фильтра в таблице
kit
постоялец
 
Сообщения: 156
Зарегистрирован: 29.09.2016 09:39:07

Пред.След.

Вернуться в RxLib

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

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

Рейтинг@Mail.ru