微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

德尔福 – Firemonkey TEdit高度

我正在使用Delphi Seattle,我的应用程序是用于 Windows桌面的.

我正在尝试更改TEdit的字体大小.因此,高度也被修改.在设计时,一切都运行良好,但是当我运行我的应用程序时,TEdit忽略高度修改并且文本被剪切.

我已经尝试按照建议here找到FixedHeight,但我找不到这个属性.

是否有可能改变TEdit Heigth?

解决方法

这可以通过覆盖控件的AdjustFixedSize方法解决.
正如@chrisrolliston所述,Removing a FMX control’s size restrictions和例证 here

unit Unit4;
interface
uses
  System.SysUtils,System.Types,System.UITypes,System.Classes,System.Variants,FMX.Types,FMX.Controls,FMX.Forms,FMX.Graphics,FMX.Dialogs,FMX.Edit,MyTEdit;

type
  TForm4 = class(TForm)
    Edit1: TEdit;
    procedure FormCreate(Sender: TObject);
  end;

var
  Form4: TForm4;

implementation

{$R *.fmx}

procedure TForm4.FormCreate(Sender: TObject);
begin
  Edit1.Height := 60;
end;

end.
unit MyTEdit;
interface
uses
  FMX.Edit,FMX.Controls;

type
  TEdit = class(FMX.Edit.TEdit)
  protected
    procedure AdjustFixedSize(const Ref: TControl); override;
  end;

implementation
uses
  FMX.Types;

procedure TEdit.AdjustFixedSize(const Ref: TControl);
begin
  SetAdjustType(TAdjustType.None);
end;

end.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐