Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Вниз

Многострочная надпись на Panel   Найти похожие ветки 

 
maestro   (2003-10-30 09:14) [0]

подскажите пожалуйста как свойство caption у компонента Panel сделать многострочным?


 
WithOut Any ...   (2003-10-30 09:19) [1]

ИМХО проще положить Label


 
maestro   (2003-10-30 09:21) [2]

панель создается програмно
можно конечно и лейбу програмно создавать
но мне кажется что наверняка есть способ по проще


 
Song   (2003-10-30 09:28) [3]

Я большую кнопку просто создавал.


 
Anatoly Podgoretsky   (2003-10-30 09:34) [4]

А он наверно панель вместо кнопки


 
VAleksey   (2003-10-30 09:34) [5]


> maestro (30.10.03 09:21) [2]

Проще всего как раз Label.


 
dataMaster   (2003-10-30 09:36) [6]

>maestro

Напиши свой компонент, в котором смешаешь Panel и Label.


 
maestro   (2003-10-30 09:44) [7]

все верно
панель создаю вместо кнопки
потому как убейте меня не понимаю почему
у меня при создании кнопки
цвет фонта не меняется
вот код:
procedure CreateButton (Name_b,cap_b:String;m_top,m_left,clr:Integer);
var btn : TButton;
begin
btn := TButton.Create(Form1);
with btn do begin
Parent := Self;
OnClick := ButtonClicked;
name:=Name_b;
top:=m_top;
Left:=m_left;
Width:=150;
Height:=40;
Cursor:=crHandPoint;
Font.Color:=clRed;(вот это строка не арбайтен)
Font.Style:=[fsBold];
Caption:=cap_b;
Visible := true;
End;
а ставлю вместо TButton TPanel
все замечательно фунциклирует


 
dataMaster   (2003-10-30 10:44) [8]

Вот сваял кое-что. Попробуй.

unit dmPanel;

interface

uses
Classes,
ExtCtrls,
StdCtrls;

type
TdmPanel = class(TCustomPanel)
private
{ Private declarations }
CapLabel: TLabel;
protected
{ Protected declarations }
function GetCaption: string;
procedure SetCaption(Value: string);
public
{ Public declarations }
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
{ Published declarations }
property Align;
property Alignment;
property Anchors;
property AutoSize;
property BevelInner;
property BevelOuter;
property BevelWidth;
property BiDiMode;
property BorderWidth;
property BorderStyle;
property Caption: string read GetCaption write SetCaption;
property Color;
property Constraints;
property Ctl3D;
property UseDockManager default True;
property DockSite;
property DragCursor;
property DragKind;
property DragMode;
property Enabled;
property FullRepaint;
property Font;
property Locked;
property ParentBiDiMode;
property ParentBackground;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property ShowHint;
property TabOrder;
property TabStop;
property Visible;
property OnCanResize;
property OnClick;
property OnConstrainedResize;
property OnContextPopup;
property OnDockDrop;
property OnDockOver;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDock;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnGetSiteInfo;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnResize;
property OnStartDock;
property OnStartDrag;
property OnUnDock;
end;

procedure Register;

implementation

procedure Register;
begin
RegisterComponents("dataMaster""s Components", [TdmPanel]);
end;

function TdmPanel.GetCaption: string;
begin
Result:=CapLabel.Caption;
end;

procedure TdmPanel.SetCaption(Value: string);
begin
with CapLabel do
begin
Caption:=Value;
Left := Self.Width div 2 - Width div 2;
Top := Self.Height div 2 - Height div 2;
end;
end;

constructor TdmPanel.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
CapLabel:=TLabel.Create(Self);
with CapLabel do
begin
Parent:=Self;
Transparent:=True;
end;
end;

destructor TdmPanel.Destroy;
begin
inherited Destroy;
end;

end.


 
Alex_Bredin   (2003-10-30 10:45) [9]

Caption.Font.Color:=clRed;(вот это строка не арбайтен)
а так?


 
GIL   (2003-10-30 10:50) [10]

делай так: Caption:="abc"+#13#10+"def" только я не помню, возможно #13 и #10 придется местами пеменять


 
Zacho   (2003-10-30 10:57) [11]


> GIL © (30.10.03 10:50) [10]

C панелью - не пройдет.


 
REP   (2003-10-30 11:01) [12]

GIL © (30.10.03 10:50) [10]
У панели не работает


 
maestro   (2003-10-30 11:06) [13]

caption.Font.Color так не бывает
"abc"+#13#10+"def" так тоже не работает
а от места #13#10 вообще нихрена не зависит
какая разница что делать сначала каретку переводить или в начало строки ее возвращать

код предложеный dataMaster
поизучаю спасибо


 
Yuri Btr   (2003-10-30 11:31) [14]

Вот так работает для некоторых контролов (кнопки, чекбоксы ...)

procedure SetMultiline(handle:integer);
begin
SetWindowlong(Handle, GWL_STYLE,GetWindowLong(Handle, GWL_STYLE) or BS_MULTILINE);
end;

а затем где нибудь в программе делаешь SetMultiline(TCheckbox1.Handle);

А Gil прав - делай для Label.Caption:="abc"+#13#10+"def"
тоько раздвинь по высоте компонент, чтобы увидеть все строчки.

Для панели ни один из этих способов кажется не работает ...


 
dataMaster   (2003-10-30 12:17) [15]

>maestro
код предложеный dataMaster
поизучаю спасибо


А что изучать? Это готовый компонент.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.03 c
1-41537
Brenton
2003-10-28 04:52
2003.11.13
Проблема с копированием файлов... помогите пожалуйста


14-41976
Digitman
2003-10-15 15:07
2003.11.13
Про братьев наших меньших...)


7-42167
short
2003-08-28 21:44
2003.11.13
Sound card (in-out)


1-41652
snlnik
2003-10-19 20:10
2003.11.13
проверка существования ключа в реестре


1-41638
Support
2003-10-26 01:01
2003.11.13
Как из чужой проги извлеч инфу





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский