Форум: "Начинающим";
Текущий архив: 2007.07.08;
Скачать: [xml.tar.bz2];
ВнизМожно ли в стринггрид выравнять по правому краю во 2ом столбике Найти похожие ветки
← →
Infinityx93 © (2007-06-15 00:28) [0]Можно ли в стринггрид выравнять по правому краю во 2ом столбике или строчке.
спасибо
← →
MsGuns © (2007-06-15 00:35) [1]можно
← →
Anatoly Podgoretsky © (2007-06-15 00:37) [2]> Infinityx93 (15.06.2007 00:28:00) [0]
Можно
← →
MsGuns © (2007-06-15 00:39) [3]>Anatoly Podgoretsky © (15.06.07 00:37) [2]
;))))
С чувством глубокого удовлетворения пошел спатки ;)
← →
Infinityx93 © (2007-06-15 00:44) [4]и что никто не подскажет как ????
← →
sniknik © (2007-06-15 02:01) [5]нет.
(на этом можно было бы и закончить, но так и быть обьясню. в ущерб лаконичности)
ты разве спрашивал как? почитай вопрос, почитай ответ, все отвечено... на 100% точно. как в аптеке.
← →
Infinityx93 © (2007-06-15 02:23) [6]я понимаю что вы все программисты и отвечаете оч точно (как в анекдоте), но ведь все знают что я хотел получить в ответ и чего не получил.
← →
{RASkov} © (2007-06-15 02:38) [7]> [6] Infinityx93 © (15.06.07 02:23)
http://www.delphimaster.ru/articles/stringgrid/index.html
← →
Anatoly Podgoretsky © (2007-06-15 07:34) [8]> Infinityx93 (15.06.2007 02:23:06) [6]
И что ты хотел, разве не узнать можно или нет?
← →
DelphiWorld (2007-06-15 08:10) [9]Нижеприведенный код выравняет данные компонента по правому краю:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; Col, Row:
Longint; Rect: TRect; State: TGridDrawState);
var
lRow, lCol: Longint;
begin
lRow := Row;
lCol := Col;
with Sender as TStringGrid, Canvas do
begin
if (gdSelected in State) then
begin
Brush.Color := clHighlight;
end
else if (gdFixed in State) then
begin
Brush.Color := FixedColor;
end
else
begin
Brush.Color := Color;
end;
FillRect(Rect);
SetBkMode(Handle, TRANSPARENT);
SetTextAlign(Handle, TA_RIGHT);
TextOut(Rect.Right - 2, Rect.Top + 2, Cells[lCol, lRow]);
end;
end;
Хитрость заключается в установке выравнивания текста TA_RIGHT, позволяющей осуществлять вывод текста, начиная с правой стороны (от правой границы). Не бойтесь, текст не будет напечатан задом наперед!
Вы наверное уже обратили внимание на объявление локальных переменных lCol и lRow. На входе я присваиваю им значения параметров Col и Row (имя, которое дало мне Delphi IDE). Дело в том, что объект TStringGrid имеет свойства с именами Col и Row. Эти свойства будут доступны в теле блока "with Sender as TStringGrid", но они не являются параметрами для всех обявленных в шапке блока объектов ((речь идет об объекте Canvas, у которого нет свойств с именами Col и Row - В.О.)).
© Delphi World
← →
{RASkov} © (2007-06-15 12:53) [10]> Вы наверное уже обратили внимание на объявление локальных переменных lCol и lRow.
Это лишнее.... Может раньше и было так, но с D4 вроде точно) имена этих параметров в данном обработчике(и не только в этом) имеют префикс А , т.е. ACol и ARow....
Везде этот устаревший пример :) Я об Col и Row.....
← →
Infinityx93 © (2007-06-16 17:54) [11]выдает ошибку:
Undeclared identifier: "StringGrid1DrawCell"
помогите исправить
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.07.08;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.047 c