Вниз
Скачать: CL | DM;

Вывод данных в DBGrid   Найти похожие ветки 

← →
jacksotnik   (2011-10-13 12:02) [0]

Вобщем есть DBGrid в который выводится таблица через MyTable. Всё класно работает но вот вопрос у меня есть один столбец типа boolean я хочу чтоб в гриде отображались значения не true или false а какой либо тексто(типа true - нал, false-безнал). Можно-ли както подменить значение?


← →
Anatoly Podgoretsky ©   (2011-10-13 12:03) [1]

OnGetText


← →
jacksotnik   (2011-10-13 12:04) [2]

А можно поподробнее


← →
Медвежонок Пятачок ©   (2011-10-13 12:07) [3]

TField.OnGetText


← →
Плохиш ©   (2011-10-13 12:11) [4]


> jacksotnik   (13.10.11 12:04) [2]
>
> А можно поподробнее


Das Ereignis OnGetText wird ausgelöst, wenn die Feldeigenschaften DisplayText oder Text referenziert werden.

Delphi-Syntax:

property OnGetText: TFieldGetTextEvent;

C++ Syntax:

__property TFieldGetTextEvent OnGetText = {read=FOnGetText, write=FOnGetText};

Beschreibung

Mit einer OnGetText-Ereignisbehandlungsroutine können Sie Eigenschaften DisplayText und Text individuell verarbeiten. Mit OnGetText kann der Wert Value des Feldes für die Anzeige oder die Bearbeitung unterschiedlich formatiert werden. Alternativ dazu kann mit OnGetText auch etwas anderes als der Feldwert dargestellt werden.

Wenn keine OnGetText-Ereignisbehandlungsroutine vorhanden ist, entsprechen die Werte der Eigenschaften DisplayText und Text dem Wert der Eigenschaft AsString.


← →
jacksotnik   (2011-10-13 12:25) [5]

Сделал так:
procedure Tfrm_klients.MyTable1korpGetText(Sender: TField; var Text: string;
 DisplayText: Boolean);
begin
if DisplayText = true then
text:="Нал";
if DisplayText = false then
text:="Безнал";
end;

Но насколько я понял оно не для каждой записи проверку условия делает. Как правильно организовать чтоб прошло по всем записям?


← →
Медвежонок Пятачок ©   (2011-10-13 12:29) [6]

оно прошло по всем записям.


← →
Германн ©   (2011-10-13 12:30) [7]


> jacksotnik   (13.10.11 12:25) [5]
>
> Сделал так:

Лучше б значение поля проверял.


← →
jacksotnik   (2011-10-13 12:37) [8]


> Лучше б значение поля проверял.

А как проверить значение поля?


← →
Медвежонок Пятачок ©   (2011-10-13 12:40) [9]

сравнить его значение с чем нибудь


← →
jacksotnik   (2011-10-13 12:42) [10]

Та это я понимаю, вопрос в том как правильно обратиться к значению поля?


← →
Inovet ©   (2011-10-13 12:42) [11]

if Sender.AsBoolean then text:="Нал";
else text:="Безнал";


← →
Медвежонок Пятачок ©   (2011-10-13 12:46) [12]

Но лучше только внутри if DisplayText


← →
jacksotnik   (2011-10-13 12:48) [13]

Спасибо всё получилось


← →
Anatoly Podgoretsky ©   (2011-10-13 15:27) [14]

> jacksotnik  (13.10.2011 12:25:05)  [5]

Для этого надо ничего не делать.


← →
icWasya ©   (2011-10-14 13:53) [15]

Вообщето для этого есть DisplayValues

 (MyTable.FieldByName("PayType").As TBooleanField).DisplayValue:="нал;безнал";



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.005 c
2-1318398757
TeteriN
2011-10-12 09:52
2012.01.22
Косвенное обращение к объектам


15-1317760202
Юрий
2011-10-05 00:30
2012.01.22
С днем рождения ! 5 октября 2011 среда


2-1318595251
Очень Злой
2011-10-14 16:27
2012.01.22
Unicode


3-1269545592
ruslan_as
2010-03-25 22:33
2012.01.22
Как скопировать таблицу Oracle в другую базу Oracle


2-1318236805
lesstab
2011-10-10 12:53
2012.01.22
Добавление новой записи и ее отражение.




   Наверх