关于Edit的Alignment问题(100分)

  • 主题发起人 主题发起人 Panels
  • 开始时间 开始时间
P

Panels

Unregistered / Unconfirmed
GUEST, unregistred user!
为什么Edit没有Alignment,我看帮助里面写着有的。再有QStdCtrls.pas 和StdCtrls.pas
有什么不同。有什么关系??
 
自已改一下啦。继承TCustomEdit
 
private
FAlignment : TAlignment;
procedure SetAlignment(const Value: TAlignment);
protected
procedure CreateParams(var Params: TCreateParams); override;
published
property Alignment : TAlignment read FAlignment write SetAlignment default taLeftJustify;


....

procedure TStarEdit.SetAlignment(const Value: TAlignment);
begin
if FAlignment <> Value then
begin
FAlignment := Value;
RecreateWnd;
end;
end;


procedure TStarEdit.CreateParams(var Params: TCreateParams);
const
Alignments: array[Boolean, TAlignment] of DWORD =
((ES_LEFT, ES_RIGHT, ES_CENTER), (ES_RIGHT, ES_LEFT, ES_CENTER));
begin
inherited CreateParams(Params);
with Params do Style := Style or Alignments[UseRightToLeftAlignment, FAlignment];
end;

这是我改的控件里的部分代码,你参考一下
 
Edit是没有Alignment不知道宝兰是怎么想的?如果要处理就自己改变Edit的控件吧!
 
QStdCtrls.pas 和StdCtrls.pas
有什么不同。有什么关系??
指点一下吧?
 
可能是高度只与字体有关,自己设都没用,所以没有Alignment吧[:D]
 
我只知道加Q的文件是为了实现跨平台使用的
 
加Q的似乎包含根多的东西,象图象处理时有些函数在Graphic中没有在QGraphic中可以找到。
 
后退
顶部