TScaledLayout

解決


Moe  2022-11-08 23:01:27  No: 150670  IP: 192.*.*.*

Delphi好き女子です。
CommunityEditionの10.4.2を使ってFireMonkeyアプリケーションにトライしています。
TEdit(×ボタンを表示)をフォームに配置してscaleを2にしたところ、×ボタンがTEditの枠から大きくはみ出してしまいます。
これを解消する方法ございましたら教えて頂けませんでしょうか?

編集 削除
AAAAA  2022-11-09 01:11:05  No: 150671  IP: 192.*.*.*

FireMonkeyのTEditでTClearEditButtonを追加すると
https://www.petitmonte.com/bbs/answers?question_id=29971

と同じなんだけど

procedure TForm1.Button1Click(Sender: TObject);
begin
    ClearEditButton1.Parent := Form1;
    ClearEditButton1.Scale  := Edit1.Scale;
    ClearEditButton1.Align := TAlignLayout.None;
    ClearEditButton1.Position.X := Edit1.Position.X + (Edit1.Width * Edit1.Scale.X)- (Edit1.Height * Edit1.Scale.Y) + 4;
    ClearEditButton1.Position.Y := Edit1.Position.Y + 4;
    ClearEditButton1.Width      := (Edit1.Height) -4;
    ClearEditButton1.Height     := (Edit1.Height) -4;
end;

//Parent を Edit1 から外すとクリアされなくなるので OnClick で削除
procedure TForm1.ClearEditButton1Click(Sender: TObject);
begin
    Edit1.Text := '';
end;

こうすればなんとかなる

編集 削除
Moe  2022-11-09 10:05:44  No: 150672  IP: 192.*.*.*

AAAAA さん、回答ありがとうございます。
バグなのですね。。。
ご提示いただきました方法で逃げてみます。

編集 削除