Fire Monkey ライブラリを使用してプログラムでフォント サイズを変更しようとしていますが、何も機能していないようです。これが私の最新の試みです:
procedure TForm2.Button1Click(Sender: TObject);
var
i, j, k: integer;
w: single;
begin
k := 0;
with StringGrid1 do
begin
canvas.Font.Size := 24; //set font size
StringColumn2.visible := false; //hide this column
for i := 0 to columncount - 1 do //loop through columns
begin
columns[i].header := 'hdr' + inttostr(i + 1); //provide header content
w := StringGrid1.Canvas.TextWidth(columns[i].header); //measure width needed
for j := 0 to rowcount - 1 do //loop through rows
begin
k := k + 1; //variable cell content
if i = 0 then //do row label
cells[i, j] := 'Lyr' + inttostr(k)
else
begin //do row body
cells[i, j] := inttostr(k);
end;
w := max(w, StringGrid1.Canvas.TextWidth(cells[i, j])); //measure width needed
end;
columns[i].Width := w + 10; //set width
end;
end;
end;
end.
canvas.Font.Size := 24
フォント サイズには影響しませんが、興味深い副作用があります。フォント サイズを変更すると、 によって提供される結果が変わりますcanvas.TextWidth
。そのため、フォント サイズの部分的な実装があります。フォント スタイルを提案する人にとって、この問題に対して有効なものはありません。font.size
以前の演習では、コンポーネントの変更に対する同様の応答の欠如に遭遇しましたTEdit
が、その演習でフォント スタイルが有効であったかどうかはわかりません。私は何も設定していないことを知っています。