2015-03-05 3 views
0

Я использую Delphi XE7 для разработки приложений для Android. В том, что я использовал TStringGrid, а затем использовал StringGrid.cells[0, 0] := 'Test' И как я могу изменить цвет шрифта той конкретной ячейки, которую я показал в коде. А также у меня есть this sample code,, но я не могу изменить цвет шрифта конкретной ячейки. Пожалуйста, объясните мне, как изменить цвет шрифта конкретного значения ячейки. И я использую Delphi XE7, и я нацелен на Android mobile. неКак изменить цвет элемента stringgrid с помощью Delphi XE7

Спасибо ..

+1

Что вы знаете о стиле FMX? Я подозреваю, что вы не знакомы с этим. Пока вы не узнаете об этом, вы, вероятно, зададите этот вопрос о каждом контроле, который вы когда-либо использовали. Это началось с 'TToolbar', теперь' TStringGrid'. –

+1

Вы спросили о TToolbar [здесь] (http://stackoverflow.com/q/28852006/62576) и кнопках градиента [здесь] (http://stackoverflow.com/q/28765103/62576), а теперь ячейка stringgrid , Пожалуйста, сделайте некоторое исследование по работе с стилями FMX, поэтому вы не просите, как делать каждую мелочь, влияющую на внешний вид, с помощью каждого элемента управления. –

ответ

0

В конце концов, я нашел решение, которое я требуется. Следуйте инструкциям. Мы можем изменить цвет шрифта в самой TStringGrid, не нужно использовать TGrid. Следуйте приведенным ниже инструкциям.

Сначала назначьте это в FormCreate события:

StringGrid1.DefaultDrawing := False; 

затем написать в StringGrid DrawColumnCell событие:

Canvas.fill.Color := TAlphaColorRec.Green; 
    Canvas.FillText(Bounds, (Value.AsString), 
    false, 100, [], TTextAlign.taLeading, TTextAlign.taCenter); 
+0

Работает как чемпион. –

1

В FireMonkey TStringGrid есть нет в вариантах ячейки для укладки. Вам нужно будет либо использовать управление сеткой третьей стороны, либо перевернуть что-то из TGrid.

Вы можете найти много материала о последних на моем сайте в http://monkeystyler.com/guide

0

Работает в X Е8, а также для TStringGridOnDrawColumnCell событие.

Вот пример, который сохраняет цвет на черном, но придает стилю шрифта жирным шрифтом. Подсказка, добавьте отступы для шрифта 2 пикселя из левого поля.

var Rect : TRectF; 
begin 
    Rect := Bounds; 
    Rect.Left := Rect.Left + 2; 
    Canvas.Font.Style := [TFontStyle.fsBold]; 
    Canvas.Fill.Color := TAlphaColorRec.Black; 
    Canvas.FillText(Rect, (Value.AsString), false, 100, [], TTextAlign.taLeading, TTextAlign.taCenter); 
end; 

Что я пропустил в начале, не устанавливал DefaultDrawing на false! После того, как я установил это, событие приняло изменения в Canvas.

Смежные вопросы