Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.11.13;
Скачать: [xml.tar.bz2];

Вниз

Как в одну ячейку StringGrid засунуть две строки?   Найти похожие ветки 

 
MBoris   (2005-10-24 13:41) [0]

Доброго времени суток! Подскажите, пож-та, как в одну ячейку StringGrid засунуть две строки, т.е. типа StringGrid.Cells [0,0]:="Привет"+#13+" Люди";
Спасибо!


 
umbra ©   (2005-10-24 15:18) [1]

Можно так:


procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
var
h: Integer;

begin
 StringGrid1.Canvas.Textout(rect.Left, rect.Top, "Привет");
 h := StringGrid1.Canvas.TextHeight("Привет");
 StringGrid1.Canvas.Textout(rect.Left, rect.Top + h, "Привет");
end;


 
begin...end ©   (2005-10-24 15:23) [2]

OnDrawCell + DrawText


 
MBoris   (2005-10-24 17:23) [3]

Наверное, будет звучать глупо? А какие значения может принимать State: TGridDrawState. Я пытался подставить gdSelected, gdFocused, gdFixed - ничего не вышло!


 
Германн ©   (2005-10-24 17:26) [4]

Это Set of. А следовательно []


 
MBoris   (2005-10-24 17:33) [5]

А какие значения может принимать Rect: TRect при вызове функции


 
MBoris   (2005-10-24 17:35) [6]

>> begin...end ©   (24.10.05 15:23) [2]
>> OnDrawCell + DrawText
...это что ты имел ввиду?


 
Германн ©   (2005-10-24 17:41) [7]


> А какие значения может принимать Rect: TRect при вызове
> функции


Какая функция имеется в виду?


 
MBoris   (2005-10-24 17:43) [8]

Ой простите при вызове процедуры.
Вот этой:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);


 
Германн ©   (2005-10-24 17:48) [9]

Он принимает значение того прямоугольника, который тебе нужно перерисовать. В данном случае это та самя ячейка грида. Если не ошибаюсь включая рамку.


 
umbra ©   (2005-10-24 17:50) [10]


> procedure TForm1.StringGrid1DrawCell


Это процедура-обработчик события. На вашей форме отметьте StringGrid, в инспекторе обектов щелкните на закладку Events (События). Найдите там OnDrawCell и дважды щелкните по редактируемому полю справа от надписи. В редакторе кода появится заготовка процедуры. вставляете в нее код из примера. Она будет автоматически вызываться каждый раз, когда приложению надо будет нарисовать StringGrid. Все параметры передаются в нее приложением Изменять их без надобности не стоит.
Подробности - в справке про класс ТStringGrid


 
MBoris   (2005-10-24 17:52) [11]

Большое спасибо за то, что помогаете новичкам-самоучкам!!!



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

Форум: "Основная";
Текущий архив: 2005.11.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.041 c
14-1129898967
oldman
2005-10-21 16:49
2005.11.13
пятничная задачка...


14-1129731119
ArtemESC
2005-10-19 18:11
2005.11.13
Старый добрый Turbo Pascal


1-1130164347
Katya2100000000
2005-10-24 18:32
2005.11.13
Лёгкий вопрос


1-1130091452
Motorin
2005-10-23 22:17
2005.11.13
Что то типа карты москвы...


2-1130172359
Dudee
2005-10-24 20:45
2005.11.13
TString





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский