Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Вопрос по CreateSubClass


Автор: ivan219 12.4.2007, 20:49
Код

unit E;

interface

uses
  SysUtils, Classes, Controls;

type
  TE = class(TWinControl)
  private
    { Private declarations }
  protected
    procedure CreateParams(var Params: TCreateParams); override;
  public
    { Public declarations }
  published
    { Published declarations }
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('MyComponent', [TE]);
end;

{ TE }

procedure TE.CreateParams(var Params: TCreateParams);
begin
  inherited;
  CreateSubClass(Params, 'EDIT');
end;
end.

Каким образом можно ограничить CreateSubClass(Params, 'EDIT'); чтоб он незанимал всё пространство smile 

Автор: MetalFan 12.4.2007, 22:41
ничего не понял. что ограничить? чье пространство не занимал?
по-яснее можно? 

Автор: ivan219 13.4.2007, 23:29
Есть компонент код выше вот CreateSubClass(Params, 'EDIT'); создаёт поле для в вода текста на всей длинне компонента мне надо ограничить длинну создаваемого при помоще CreateSubClass(Params, 'EDIT'); текстового поля.

Автор: Yanis 13.4.2007, 23:36
Цитата(ivan219 @  14.4.2007,  00:29 Найти цитируемый пост)
Есть компонент код выше вот CreateSubClass(Params, 'EDIT'); создаёт поле для в вода текста на всей длинне компонента мне надо ограничить длинну создаваемого при помоще CreateSubClass(Params, 'EDIT'); текстового поля. 

А что нельзя по его хэндлу изменить ширину или что там надо?

Автор: ivan219 14.4.2007, 00:26
Как это зделать?

Автор: Yanis 14.4.2007, 10:56
Цитата(ivan219 @  14.4.2007,  01:26 Найти цитируемый пост)
Как это зделать? 

Код
  with TE.Create(Application) do
    begin
      Parent := Form1;
      Visible := True;
      Left := 0;
      Top := 0;
      Height := 25;
      Width := 100;
    end;

Автор: ivan219 14.4.2007, 13:40
А га ты вопрос непонял smile  вот и скорчил злую рожу smile 
Это овтев на компонент в целом я это знаю.
А мне надо ограничить то поле которое появляется после выполнения этого кода CreateSubClass(Params, 'EDIT'); а точнее мне надо чтоб ("Width" CreateSubClass(Params, 'EDIT');) был меньше чем Width самого компонента.

Автор: Yanis 14.4.2007, 23:15
Цитата(ivan219 @  14.4.2007,  14:40 Найти цитируемый пост)
А га ты вопрос непонял   вот и скорчил злую рожу  
Это овтев на компонент в целом я это знаю.
А мне надо ограничить то поле которое появляется после выполнения этого кода CreateSubClass(Params, 'EDIT'); а точнее мне надо чтоб ("Width" CreateSubClass(Params, 'EDIT');) был меньше чем Width самого компонента. 

Господа, если кто-нибудь понял, что хочет юноша, просьба прояснить. Я совсем не врубаю smile

Автор: ivan219 15.4.2007, 02:46
Ну ладо по пробую ещё раз, пишу компонент, класс TE если его сразуже установить то перенеся на форме будет пустое пространство, а если в этом классе создать ещё и это CreateSubClass(Params, 'EDIT'); то появится возможность в водить текст, он при этом текст будет отображатся на всём пространстве компонента TE, мне надо чтобы он отображался не навсём пространстве а только там где я хочу.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)