Меню

Делфи как поменять цвет bitbtn



Делфи как поменять цвет bitbtn

Казалось бы — что может быть проще, чем изменить цвет кнопки типа TButton в Delphi?
Ан нет. Не так все просто. Бьюсь уже второй час.
Подскажите пожалуйста как можно изменить цвет кнопки, не использую сторонних компонент?

Всем заранее спасибо!


ЮЮ © ( 2005-01-13 12:41 ) [1]

Изменить оформление Windows. TButton в Delphi — это родная кнопка Windos — а они во всей системе одного цвета.


Neznaika © ( 2005-01-13 12:42 ) [2]

TButton не изменишь!
Используй BitBtn или другие компоненты.


Vetal © ( 2005-01-13 12:54 ) [3]

ЮЮ> Изменить оформление Windows не катит. Нужно изменить цвет только одной кнопки в приложении..

Neznaika>> Хорошо, а как можно изменить цвет кнопки, если она TBitBtn?


TButton © ( 2005-01-13 12:55 ) [4]

Можно и у TButton:
MakeObjectInstance + FreeObjectInstance (или SetWindowLong), а также сообщения WM_ERASEBKGND/WM_PAINT

PS. ИМХО не стоит геморроя, проще использовать TBitBtn


TUser © ( 2005-01-13 13:15 ) [6]


> TButton в Delphi — это родная кнопка Windos — а они во всей
> системе одного цвета

И тем не менее есть компоненты, которые изменяют стиль оформления программы, в т.ч. и цвет TButton»ов.


Vetal © ( 2005-01-13 13:23 ) [7]

Так а как все-таки изменить цвет TBitBtn?


Neznaika © ( 2005-01-13 13:24 ) [8]

>>Vetal © (13.01.05 12:54) [3]

Наложить картинку однотонную 😉


Vetal © ( 2005-01-13 13:31 ) [9]

Через свойство Glyph что ли?
Так по краям будет серенькое все.

Vetal по-моему там все это регулируется, сейчас уже не помню как но у меня это получалось.


WhiteGuy © ( 2005-01-13 13:42 ) [11]

Vetal,зайди на torry.net — там есть такие компоненты!! типa RbControls[RbButton]


Vetal © ( 2005-01-13 13:53 ) [12]

Короче, сделал TPanel, заполнял его цвет. А по клину менял стиль с Uppered на Lowered и наоборот.

Источник

BitBtn — кнопка с рисунком в Delphi

Кнопка с рисунком в Delphi представлена компонентом BitBtn, класс которой TBitBtn порожден непосредственно от класса TButton стандартной кнопки Button. Кнопка с рисунком отличается от стандартной кнопки тем, что помимо заголовка на ней можно отобразить растровое изображение. Видом и размещением изображения на поверхности кнопки BitBtn можно управлять с помощью свойств.

Свойство Glyph

Свойство Glyph типа TBitmap определяет растровый рисунок кнопки. По умолчанию свойство Glyph имеет значение None, т. е. кнопка не содержит рисунок. Рисунок может содержать до трех отдельных изображений (глифов). Какое именно изображение выводится на кнопке, зависит от ее текущего состояния:

  • первое изображение отображается, если кнопка не нажата (по умолчанию);
  • второе изображение отображается, если кнопка неактивна и не может быть выбрана;
  • третье изображение отображается, когда кнопка нажата (выполнен щелчок).

Панель для выбора ресунков (скриншот выше) вызываеться по нажатию на кнопку с тремя точками ввозле свойства Glyph (скриншот ниже).

При использовании нескольких изображений они должны быть подготовлены и сохранены в одном файле растрового формата BMP. Подготовить рисунок для кнопки можно в графическом редакторе. (например с помощью редактора Image Editor, входящего в состав Delphi или Adobe Photoshop). Все отдельные изображения в рисунке должны располагаться без промежутков в горизонтальной строке и иметь одинаковую высоту и ширину (как правило, 16×16 пикселов). По умолчанию левый нижний пиксел каждого рисунка определяет фоновый цвет рисунка. Обычно ему задают цвет поверхности кнопки (значение clBtnFace), при этом все пикселы изображения, имеющие тот же цвет, будут не видны, т. е. являются прозрачными. По этой причине фоновый цвет также называют прозрачным. Если установить, например, желтый цвет фонового пиксела, то фон изображения тоже станет желтым.

Изменить режим отображения картинки в случае, когда фоновый цвет задается левым нижним пикселом рисунка, можно, установив значения его взаимосвязанных свойств TransparentColor и TransparentMode. Для восстановления режима отображения по умолчанию нужно установить свойство TransparentMode в значение tmAuto.

Используя рисунок с несколькими различными изображениями, можно при нажатии кнопки воспроизводить на ее поверхности простейшую анимацию. Для этого первое и третье изображения должны различаться не только цветом, но и видом и расположением фигур. Отметим, что для реализации более сложной анимации можно использовать компонент Animate, расположенный непосредственно на кнопке.

Cвойство NumGlyph

Количество изображений указывается в свойстве NumGlyph типа TNumGiyphs. По умолчанию свойство NumGlyph имеет значение 1, и на кнопке всегда отображается первое изображение.

Cвойство Kind

Delphi предлагает для кнопки BitBtn несколько предопределенных видов, выбираемых с помощью свойства Kind типа TBitBtnKind. При выборе какого-либо вида для кнопки на ней отображается соответствующий глиф. Для задания вида кнопки могут использоваться следующие константы:

  • bkCustom— на кнопке имеется выбранное изображение; первоначально изображение отсутствует, и его нужно загружать дополнительно;
  • bkOK — на кнопке имеются глиф «зеленая галочка» и текст ОК; свойство Default кнопки установлено в значение True, а свойство ModalResult — в значение mrOK;
  • bkCancel — на кнопке имеются глиф «красный знак х» и текст Cancel; свойство Cancel кнопки установлено в значение True, а свойство ModalResult— в значение
  • mrCancel;
  • bkYes— на кнопке имеются глиф «зеленая галочка» и текст Yes; свойство Default кнопки установлено в значение True, а свойство ModalResult — в значение mrYes;
  • bkNo — на кнопке имеются глиф «красная перечеркнутая окружность» и текст No; свойства Cancel кнопки установлено в значение True, а свойство ModalResult — в значение mrNO;
  • bkHelp— на кнопке имеются глиф «сине-зеленый вопросительный знак» и текст Help;
  • bkClose — на кнопке имеются глиф «дверь с обозначением выхода» и текст Close; при нажатии кнопки форма автоматически закрывается;
  • bkAbort — на кнопке имеются глиф «красный знак х» и текст Abort;
  • bkRetry— на кнопке имеются глиф «зеленая стрелка повтора операции» и текст Retry;
  • bkIgnore — на кнопке имеются глиф «игнорирование» и текст Ignore;
  • bkAll — на кнопке имеются глиф «двойная зеленая галочка» и текст Yes to All.
Читайте также:  Интерьер кухни бело коричневого цвета

По умолчанию свойство Kind имеет значение bkCustom, и пользователь может сам выбирать изображение, управляя свойством. Не рекомендуется изменять свойство Glyph для предопределенных кнопок (например, для кнопки Close), т. к. в этом случае кнопка не будет выполнять закрепленные за ней действия (в данном случае закрытие окна).

Cвойство Layout

Расположением изображения на поверхности кнопки относительно текста управляет свойство Layout типа TButtonLayout, принимающее следующие значения:

  • blGlyphLeft (изображение слева от текста) — по умолчанию;
  • blGlyphRight (изображение справа от текста);
  • blGlyphTop (изображение над текстом);
  • blGlyphBottom (изображение под текстом).

Cвойство Margin

С помощью свойства Margin типа Integer можно управлять выравниванием глифа и текста относительно сторон кнопки. Это свойство задает расстояние в пикселах между стороной кнопки и изображением и по умолчанию имеет значение −1, что означает расположение глифа и текста по центру кнопки. Сторона, относительно которой производится выравнивание, определяется свойством Layout. Например, если значение Layout равно blGlyphLeft, то выравнивание выполняется по левой стороне кнопки.

На скриншоте показаны варианты выравнивания изображения и текста, соответствующие разным значениям свойства Margin.

Свойство Spacing

Свойство Spacing типа Integer определяет размер (в пикселах) промежутка, отделяющего глиф от текста. По умолчанию значение этого свойства равно 4 пикселам. Если значение этого свойства равно −1, то имеет место центрирование текста между краем глифа и дальней от него стороной кнопки.

На скриншоте показано использование различных значений свойства Spacing, отображенных в виде текста на кнопках.

Источник

Делфи как поменять цвет bitbtn

Здравствуйте, , Вы писали:

А>Вывожу на кнопку картинку, а он цвет фона заменяет на свой цвет по умолчанию. Как избавиться от этого или как изменить цвет кнопки по умолчанию?

А как делаешь? Кнопка — это какая из кнопок?

От: Arioch
Дата: 13.04.04 18:33
Оценка:

Hello, !

> Вывожу на кнопку картинку, а он цвет фона заменяет

Не правда.
Цвет левого верхнего (или нижнего, не помню) угла.

Так что делай левую колонку специально-прозрачную.

Или копай в сторону www.torry.ru


[tip] Fix for Outlook Express quoting: http://Arioch.nm.ru/FL/Fidolook_SL.png
E-mail is faked because of spam. the_Arioch@NM.falseDomain.ru

От: par
Дата: 15.04.04 09:53
Оценка:

Здравствуйте, Аноним, Вы писали:

А>Вывожу на кнопку картинку, а он цвет фона заменяет на свой цвет по умолчанию. Как избавиться от этого или как изменить цвет кнопки по умолчанию?

там смысел в том что надо внимательно мануаль читать

Note: The lower left pixel of the bitmap is reserved for the “transparent” color. Any pixel in the bitmap that matches the lower left pixel will be transparent.

^ето^
выводится при нажатии Ф1 на ГлифПроперти

Источник

Делфи как поменять цвет bitbtn

Sarge
Дата 24.5.2003, 23:26 (ссылка) | (голосов: ) Загрузка .
Sarge
Дата 24.5.2003, 23:48 (ссылка) | (голосов: ) Загрузка .
[/B], ‘); return false;» title=»Вставить ник в поле ввода»>
Дата 25.5.2003, 05:09 (ссылка) | (нет голосов) Загрузка . ‘, ‘25.5.2003, 05:09’, 58487);»>

Око кары:)

Профиль
Группа: Экс. модератор
Сообщений: 2776
Регистрация: 29.1.2003
Где: Екатеринбург

Репутация: 44
Всего: 64

Цитата(Sarge @ 24.5.2003, 15:48)
Извини, Spawn за вопрос, а как сделать обработчик события ONCLICK?

Напиши прототип обработчика OnClick и присвой его обработчику етой кнопки. А можно новые компоненты устанавливать — Component>InstallComponent. Тогда он будет добавлен к компонентам и ты сможешь использовать его обработчики стандартным образом.

Для прототипа обработчика делаешь, например так:

Код
procedure TForm1.OnMyButtonClick(Sender:TObject);
begin
ShowMessage(‘lalala’);
end;
//Не забуть добавить в private или public формы
//procedure OnMyButtonClick(Sender:TObject);

//Присваиваешь обработчик
MyButton.OnClick:=OnMyButtonClick;

но если ты будешь пользоваться моим примером, то там надо еще добавить обработку перерисовки компонента на паре событий, а именно CM_MOUSEENTER(или как то по другому) и CM_MOUSELEAVE.

Это сообщение отредактировал(а) — 25.5.2003, 08:32

Medved
Дата 27.5.2003, 07:35 (ссылка) | (нет голосов) Загрузка .

Эксперт

Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: 14
Всего: 154

В книгах Калверта, Свана и других авторов можно найти похожий текст. Смысл текста – «Изменить цвет кнопок Button, BitBtn нельзя, т.к. их рисует WINDOWS». Если нельзя, но ОЧЕНЬ НУЖНО, то можно.

Небольшой компонент ColorBtn, дает возможность использовать в кнопках цвет. Кроме того, представлено новое свойство — Frame3D, позволяющее получить более реалистичный вид нажатой кнопки. В отличие от API, при изменении значения свойства Frame3D, не требуется переоткрытие компонента.

Код
unit colorbtn;

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons;

TColorBtn = class(TButton)
private
FCanvas: TCanvas;
IsFocused: Boolean;
F3DFrame: boolean;
FButtonColor: TColor;
procedure Set3DFrame(Value: boolean);
procedure SetButtonColor(Value: TColor);
procedure CNDrawItem(var Message: TWMDrawItem); message CN_DRAWITEM;
procedure WMLButtonDblClk(var Message: TWMLButtonDblClk); message WM_LBUTTONDBLCLK;
procedure DrawButtonText(const Caption: string; TRC: TRect; State: TButtonState; BiDiFlags: Longint);
procedure CalcuateTextPosition(const Caption: string; var TRC: TRect; BiDiFlags: Longint);
protected
procedure CreateParams(var Params: TCreateParams); override;
procedure SetButtonStyle(ADefault: Boolean); override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property ButtonColor: TColor read FButtonColor write SetButtonColor default clBtnFace;
property Frame3D: boolean read F3DFrame write Set3DFrame default False;
end;

constructor TColorBtn.Create(AOwner: TComponent);
begin
Inherited Create(AOwner);
Height:= 21;
FCanvas:= TCanvas.Create;
FButtonColor:= clBtnFace;
F3DFrame:= False;
end;

destructor TColorBtn.Destroy;
begin
FCanvas.Free;
Inherited Destroy;
end;

procedure TColorBtn.CreateParams(var Params: TCreateParams);
begin
Inherited CreateParams(Params);
with Params do Style:= Style or BS_OWNERDRAW;
end;

procedure TColorBtn.Set3DFrame(Value: boolean);
begin
if F3DFrame <> Value then F3DFrame:= Value;
end;

procedure TColorBtn.SetButtonColor(Value: TColor);
begin
if FButtonColor <> Value then begin
FButtonColor:= Value;
Invalidate;
end;
end;

procedure TColorBtn.WMLButtonDblClk(var Message: TWMLButtonDblClk);
begin
Perform(WM_LBUTTONDOWN, Message.Keys, Longint(Message.Pos));
end;

procedure TColorBtn.SetButtonStyle(ADefault: Boolean);
begin
if IsFocused <> ADefault then IsFocused:= ADefault;
end;

procedure TColorBtn.CNDrawItem(var Message: TWMDrawItem);
var
RC: TRect;
Flags: Longint;
State: TButtonState;
IsDown, IsDefault: Boolean;
DrawItemStruct: TDrawItemStruct;
begin
DrawItemStruct:= Message.DrawItemStruct^;
FCanvas.Handle:= DrawItemStruct.HDC;
RC:= ClientRect;
with DrawItemStruct do begin
IsDown:= ItemState and ODS_SELECTED <> 0;
IsDefault:= ItemState and ODS_FOCUS <> 0;
if not Enabled then State:= bsDisabled
else if IsDown then State:= bsDown
else State:= bsUp;
end;
Flags:= DFCS_BUTTONPUSH or DFCS_ADJUSTRECT;
if IsDown then Flags:= Flags or DFCS_PUSHED;
if DrawItemStruct.ItemState and ODS_DISABLED <> 0 then Flags:= Flags or DFCS_INACTIVE;
if IsFocused or IsDefault then begin
FCanvas.Pen.Color:= clWindowFrame;
FCanvas.Pen.Width:= 1;
FCanvas.Brush.Style:= bsClear;
FCanvas.Rectangle(RC.Left, RC.Top, RC.Right, RC.Bottom);
InflateRect(RC, -1, -1);
end;
if IsDown then begin
FCanvas.Pen.Color:= clBtnShadow;
FCanvas.Pen.Width:= 1;
FCanvas.Rectangle(RC.Left, RC.Top, RC.Right, RC.Bottom);
InflateRect(RC, -1, -1);
if F3DFrame then begin
FCanvas.Pen.Color:= FButtonColor;
FCanvas.Pen.Width:= 1;
DrawFrameControl(DrawItemStruct.HDC, RC, DFC_BUTTON, Flags);
end;
end else
DrawFrameControl(DrawItemStruct.HDC, RC, DFC_BUTTON, Flags);
FCanvas.Brush.Color:= FButtonColor;
FCanvas.FillRect(RC);
InflateRect(RC, 1, 1);
if IsFocused then begin
RC:= ClientRect;
InflateRect(RC, -1, -1);
end;
FCanvas.Font:= Self.Font;
if IsDown then OffsetRect(RC, 1, 1);
DrawButtonText(Caption, RC, State, 0);
if IsFocused and IsDefault then begin
RC:= ClientRect;
InflateRect(RC, -4, -4);
FCanvas.Pen.Color:= clWindowFrame;
Windows.DrawFocusRect(FCanvas.Handle, RC);
end;
FCanvas.Handle:= 0;
end;

procedure TColorBtn.CalcuateTextPosition(const Caption: string; var TRC: TRect; BiDiFlags: Integer);
var
TB: TRect;
TS, TP: TPoint;
begin
with FCanvas do begin
TB:= Rect(0, 0, TRC.Right + TRC.Left, TRC.Top + TRC.Bottom);
DrawText(Handle, PChar(Caption), Length(Caption), TB, DT_CALCRECT or BiDiFlags);
TS:= Point(TB.Right — TB.Left, TB.Bottom — TB.Top);
TP.X:= ((TRC.Right — TRC.Left) — TS.X + 1) div 2;
TP.Y:= ((TRC.Bottom — TRC.Top) — TS.Y + 1) div 2;
OffsetRect(TB, TP.X + TRC.Left, TP.Y + TRC.Top);
TRC:= TB;
end;
end;

procedure TColorBtn.DrawButtonText(const Caption: string; TRC: TRect; State: TButtonState; BiDiFlags: Integer);
begin
with FCanvas do begin
CalcuateTextPosition(Caption, TRC, BiDiFlags);
Brush.Style:= bsClear;
if State = bsDisabled then begin
OffsetRect(TRC, 1, 1);
Font.Color:= clBtnHighlight;
DrawText(Handle, PChar(Caption), Length(Caption), TRC,
DT_CENTER or DT_VCENTER or BiDiFlags);
OffsetRect(TRC, -1, -1);
Font.Color:= clBtnShadow;
DrawText(Handle, PChar(Caption), Length(Caption), TRC,
DT_CENTER or DT_VCENTER or BiDiFlags);
end else
DrawText(Handle, PChar(Caption), Length(Caption), TRC,
DT_CENTER or DT_VCENTER or BiDiFlags);
end;
end;

procedure Register;
begin
RegisterComponents(‘Controls’, [TColorBtn]);
end;

Небольшое дополнение. Кнопку по прежнему рисует WINDOWS, а раскрашивает ее ColorBtn. Код компонента на 90% повторяет код BitBtn, ничего необычного здесь нет. Хочется повторить слова Калверта – «Пользуйтесь исходным кодом». Чаще заглядывайте в VCL — можно найти много интересного.

dm9
Дата 27.5.2003, 16:39 (ссылка) | (нет голосов) Загрузка .

Дмитрий Копытин

Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва

Репутация: 6
Всего: 137

Здесь есть о цветной кнопке, а также ещё много интересго

Опытный

Профиль
Группа: Участник
Сообщений: 417
Регистрация: 18.4.2002

Репутация: нет
Всего: 1

Dapo
Дата 28.5.2003, 08:59 (ссылка) | (нет голосов) Загрузка .
Sarge
Дата 2.6.2003, 13:44 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Участник
Сообщений: 20
Регистрация: 24.5.2003
Где: Москва, флотская улица, дом 13

Репутация: нет
Всего: нет

А я решил всё подругому, в лоб!
По ходу программы создаю TBitmap и присваиваю кнопке.
Причем кнопка получается как у SPAWN без его километрового кода, и не глючит.
Я очень долго мучался с краями, поэтому получился такой странный код.
Смотрите код, пропишите функцию:

Код
Function Fill(clr:Tcolor; brd:Integer; rec:TRect):TBitmap;
begin
if brd>0 then brd:=brd+1 else brd:=-1;
with result do begin
result:=TBitmap.Create;
Height:=rec.Bottom-2*brd;
Width:=rec.Right-2*brd;
canvas.Brush.Color:=clr;
Canvas.FillRect(Rect(0, 0,Width-1, Height-1));
end;
end;

И её вызов, например:

Код
BitBtn1.Glyph:=Fill(clred,2,bitbtn1.ClientRect);

параметр brd означает отступление от краёв кнопки, если поставить 0 то она просто закрасится сплошняком, я использую 2.
И заметьте, что ведь у меня (пока) самый простой и эффективный способ.

Unregistered
Дата 2.6.2003, 14:04 (ссылка) | (голосов: ) Загрузка .
Sarge
Дата 2.6.2003, 14:17 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Участник
Сообщений: 20
Регистрация: 24.5.2003
Где: Москва, флотская улица, дом 13

Репутация: нет
Всего: нет

Это был код общего применения.
А этот заточен под кнопку TBitBtn:

Код
procedure KickBitBtn(frag:TBitBtn; clr:TColor; board:integer);overload;
var bmp:Tbitmap;
begin
if board>0 then board:=board+1 else board:=-1;
with bmp do begin
bmp:=TBitmap.Create;
Height:=frag.Height-2*board;
Width:=frag.Width-2*board;
canvas.Brush.Color:=clr;
Canvas.FillRect(Rect(0, 0,Width-1, Height-1));
frag.Glyph:=bmp;
end;
end;

И используется так:

Код
KickBitBtn(BitBtn1, clblue, 2);

Работает пока без caption, поставьте Caption:=» и получится голая кнопка, а иначе пока не хочет, буду думать.

Это сообщение отредактировал(а) Sarge — 2.6.2003, 15:15

Sarge
Дата 2.6.2003, 14:21 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Участник
Сообщений: 20
Регистрация: 24.5.2003
Где: Москва, флотская улица, дом 13

Репутация: нет
Всего: нет

Unregistered, клики обрабатываются стандартным образом, потому что кнопка создаётся сатически.
Просто кидаешь на форму BitBtn Создаёшь обработчик события OnClick.
Понял?

Sarge
Дата 2.6.2003, 15:11 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Участник
Сообщений: 20
Регистрация: 24.5.2003
Где: Москва, флотская улица, дом 13

Репутация: нет
Всего: нет

Song
Дата 2.6.2003, 17:04 (ссылка) | (нет голосов) Загрузка .
Sysman.ru

Профиль
Группа: Участник
Сообщений: 1095
Регистрация: 2.6.2002

Репутация: 2
Всего: 4

[/B], ‘); return false;» title=»Вставить ник в поле ввода»>
Дата 2.6.2003, 17:07 (ссылка) | (нет голосов) Загрузка . ‘, ‘2.6.2003, 17:07’, 59983);»>

Око кары:)

Профиль
Группа: Экс. модератор
Сообщений: 2776
Регистрация: 29.1.2003
Где: Екатеринбург

Репутация: 44
Всего: 64

Цитата(Sarge @ 2.6.2003, 07:11)
А хотя нет.
Моя кнопка работает только без Caption.
Может быть кто-нибудь знает как сделать Caption?
Просто я рачитывал, что текст можно поместить поверх рисунка, а насамом деле только слева, справа, сверху, или снизу.
Обломчик, хотя. может быть кому то нужна пустая кнопка.

TextOut()?

Опытный

Профиль
Группа: Участник
Сообщений: 417
Регистрация: 18.4.2002

Репутация: нет
Всего: 1

Dapo
Дата 3.6.2003, 06:49 (ссылка) | (нет голосов) Загрузка .

Опытный

Профиль
Группа: Участник
Сообщений: 417
Регистрация: 18.4.2002

Репутация: нет
Всего: 1

Да, а как на счет TButton?
Чтобы не быть голословным —
вот что-то приблизительное, то о чем я писал уже:

procedure ChgClr(Sender:TButtonControl;clr,capclr:TColor;Caption:string);
var DC:HDC;//контекст устройства
Cnvs:TCanvas;
begin
Cnvs:=TCanvas.Create;
DC:=GetWindowDC(Sender.Handle);
Cnvs.Handle:=DC;
Cnvs.Brush.Color:=clr;
Cnvs.Font.Color:=capclr;
Cnvs.FillRect(Sender.ClientRect);
Cnvs.TextRect(Sender.ClientRect,0,0,Caption);
ReleaseDC(Sender.Handle,dc);
Cnvs.Free;
end;

Dapo
Дата 3.6.2003, 07:39 (ссылка) | (нет голосов) Загрузка .

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) — крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

Правила форума «Delphi: Общие вопросы»

0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »

[ Время генерации скрипта: 0.1504 ] [ Использовано запросов: 21 ] [ GZIP включён ]

Источник

Слово "Цвет" и его описание © 2022
Внимание! Информация, опубликованная на сайте, носит исключительно ознакомительный характер и не является рекомендацией к применению. Обязательно проконсультируйтесь с вашим лечащим врачом!

Adblock
detector