 
			
				06.03.2010, 19:41
			
			
			
		  
	 | 
	
		
		
		
			  | 
			
			
				
				
				 Администратор 
				
				
			 | 
			  | 
			
				
				
					Регистрация: 03.10.2005 
					Адрес: Россия, Москва 
					
					Сообщения: 1,559
 
				Версия Delphi: Delphi 7 
					Репутация: выкл 
					    
				 
				
			 | 
		 
		 
		
	 | 
	
	
	
		
			
			
			 
			
		
		
		
		
	Цитата: 
	
	
		| 
			
				 Сообщение от Ama 
				Добрый вечер всем!!! Есть ли у кого нидь компонент TLabel, который при сокращении текста, не тупо обрезает, а ставит троеточие, например : 'эвамиваияваивяияваиакку', а обрезанный : 'эвамиваиява...' ? Ну чтоб сокращение (троеточие) мог ставить либо в начале, либо в середине, либо в конце 
			
		 | 
	 
	 
 
	Код: 
	function TForm3.end_points(lbl: TLabel): string;
var
 s: string;
 i: integer;
begin
 s:=lbl.Hint;
 //
 if lbl.Canvas.TextWidth(s)<=lbl.Width
 then
  begin
   result:=s;
   lbl.ShowHint:=false;
   Exit;
  end;
 //
 lbl.Caption:='';
 //
 for i:=1 to Length(s) do
  begin
   lbl.Caption:=lbl.Caption+s[i];
   if (lbl.Canvas.TextWidth(lbl.Caption)+16>=lbl.Width)
   then
    begin
     result:=lbl.Caption+'...';
     lbl.ShowHint:=true;     
     Break;
    end;
  end;
end; 
  
		
	
		
		
		
		
		
	
		
		
	
	
	 |