Показать сообщение отдельно
  #5  
Старый 28.12.2011, 08:52
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Код:
uses
  StrUtils,

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label3: TLabel;
    procedure FormCreate(Sender: TObject);

function MinimizeText(const Text: String; Canvas: TCanvas; Width: Integer): String;
var
  TmpStr: String;
  Len: Integer;
  I: Integer;
  FirstPart, SecondPart: String;
begin
  TmpStr:=Text;
  Len:=Length(TmpStr);
  FirstPart:='';
  SecondPart:='';
  I:=1;
  while Canvas.TextWidth(TmpStr)>Width do
  begin
    FirstPart:=LeftStr(Text, (Len div 2)-I);
    SecondPart:=RightStr(Text, (Len div 2)-I);
    TmpStr:=FirstPart+'..'+SecondPart;
    Inc(I);
  end;
  Result:=TmpStr;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Label1.Caption:=MinimizeText('Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms', Label1.Canvas, Label1.Width);
  Label3.Caption:=MinimizeText('Windows, Messages, SysUtils, Variants', Label1.Canvas, Label1.Width);
end;

http://zalil.ru/32391797
__________________
Пишу программы за еду.
__________________
Ответить с цитированием