-
> Ну опять... вот смотри: если стоит стиль vsImage, а FBitMap=nil(Empty), > то что - твоя метка ничего не покажет?(т.е будет пустой). > Ну если ты так задумал, то ладно.
Имменно, если vsImage, то caption не должен отображаться. Отображам BitMap, ну а если он пустой..... > Ну здесь однозначно напрашиваются тройка свойств, типа: > HotTrack: Boolean и TextColor1, TextColor2: TColor(названия > только поэлегантней придумай). > И также добавить OnMouseEnter(Leave) события.: > procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER; > > procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE; >
Это уже после :) > ЗЫ ByakaBuka - А почему не iXT? :)
Одна машина в нете (на работе) много людей, желающих написать сюда :) > DimaBr © (23.04.07 08:38) [19] В данном случае не рационально. Не должны меняться ни размеря (с момента создания), ни рисовать на нем никто не собирается, хотя если рисовать на Bitmap, а не на Canvas объекта, то вроде все и так хорошо :) Вот не понял одну фишку: system.pas
TObject.Destroy;
begin
end; Это как понимать? и должен ли после Free => TFLabel = nil
-
> Не должны меняться ни размеря (с момента создания), ни рисовать на нем никто не собирается
Если бы все так думали VCL была бы в 1000 раз меньше.
-
Ну это только в данном случае, т.к. потомка пишу не для всех :) А так ничего против пяти копеек не имею.
-
Хорошо, тогда могу высказаться подробнее. Замечания: 1. Нет необходимости писать методы доступа если ничего кроме чтения/присвоениея они не делают. 2. Если вы описали свойство с default, то как минимум его нужно задать в конструкторе. 3. При уничтожении компонента нет смысла его перерисовывать. 4. При изменении свойств от которых зависит изображение нужно бы перерисоватся 5. Вообще, весь ваш компонент на данном этапе больше похож на TImage.
-
5. В принципе это и хотелось TLabel + TImage 4. Согласен, просто в данном контексте он не должен изменяться с момента его создания, до сомой смерти 3. Да, косяк :) 2. ? 1. ? и самое главное (сейчас) system.pas
TObject.Destroy;
begin
end; Это как понимать? и должен ли после Free => TFLabel = nil
-
> и должен ли после Free => TFLabel = nil
Нет не должен, если вы самостоятельно не установите или не воспользуетесь процеруриной FreeAndNill(). > Это как понимать?
Всё правильно, а что вы желали увидеть ??? 2.
property ViewStyle: TViewStyle read GetViewStyle write SetViewStyle default vsText;
constructor TFlabel.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
BitMap:=TBitmap.Create;
fViewStyle := vsText;
end;
1.
property Number: Integer read GetNumber write SetNumber;
property Number: Integer read fNumber write fNumber; На мой взгляд проще унаследоваться от TImage, открыть свойство Caption и отрисовать его в зависимости от ViewStyle.
-
Thenks!
> На мой взгляд проще унаследоваться от TImage, открыть свойство > Caption и отрисовать его в зависимости от ViewStyle.
У ТLabel есть еще много свойств. И в основном используется он, ни иногда, надо еще и картиночку отрисовывать :) Вот с WorldWrap отрисовывать гараздо сложнее придется, хотя тут уже кому как и что вкуснее :)
Еще раз Спасибо!
-
> Вот с WorldWrap отрисовывать гараздо сложнее придется
Это вам только кажется, если внимательно присмотрется к DrawText то всё окажется намного проще.
|