delphi 中如何让listview 标题居中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi 中如何让listview 标题居中相关的知识,希望对你有一定的参考价值。

只是标题居中,内容要左对齐。。
不知道有没有简单的办法。

参考答案: 自古以来学有建树的人,都离不开一个“苦”字。 参考技术A listview1.Column[1].Alignment:= taCenter;

Delphi7如何实现让Tedit显示文字垂直居中(上下居中)

通过下面的组件,可以在输入文字的时候自动垂直居中 
直接把下面代码保存到Unit1.pas即可
------------------------------------------

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TEdit = class(StdCtrls.TEdit)
  protected
    procedure CreateParams(var Params: TCreateParams); override;
    procedure KeyPress(var Key: Char); override;
    procedure WMSize(var msg: TWMSize);message WM_SIZE;
    procedure SetParent(AParent: TWinControl);override;
    procedure SetCenter;
  end;
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
     Edt: TEdit;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
{ TEdit }

procedure TForm1.FormCreate(Sender: TObject);
begin
  Edt := TEdit.Create(self);
  Edt.Parent := self;
  Edt.AutoSize := False;
  Edt.Height := 50;
end;

procedure TEdit.CreateParams(var Params: TCreateParams);
begin
  inherited;
  Params.Style := Params.Style or ES_MULTILINE;
end;

procedure TEdit.KeyPress(var Key: Char);
begin
  inherited;
  if Key = #13 then
    key := #0;
end;

procedure TEdit.WMSize(var msg: TWMSize);
begin
  inherited;
  SetCenter;
end;

procedure TEdit.SetParent(AParent: TWinControl);
begin
  inherited;
  if Parent <> nil then
  begin
    SetCenter;
  end;
end;

procedure TEdit.SetCenter;
var
DC: HDC;
SaveFont: HFont;
Sin: Integer;
SysMetrics, Metrics: TTextMetric;
Rct: TRect;
begin
DC := GetDC(0);
GetTextMetrics(DC, SysMetrics);
SaveFont := SelectObject(DC, Font.Handle);
GetTextMetrics(DC, Metrics);
SelectObject(DC, SaveFont);
ReleaseDC(0, DC);
if Ctl3D then Sin := 8 else Sin := 6;
Rct := ClientRect;
Sin := Height - Metrics.tmHeight - Sin;
Rct.Top := Sin div 2;
SendMessage(Handle, EM_SETRECT, 0, Integer(@Rct));
end;




end.

当这个保存成unit1.pas 后,然后通过delphi组件安装功能来安装组件,具体安装方法可以到网上查方法

以上是关于delphi 中如何让listview 标题居中的主要内容,如果未能解决你的问题,请参考以下文章

如何让listview的文字居中显示

Delphi7如何实现让Tedit显示文字垂直居中(上下居中)

Delphi7如何实现让Tedit显示文字垂直居中(上下居中)

android listview 里面的item怎么让它居中?

ListView,如何使元素居中

关于listview:列的标题如何居中显示?