Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Мастера DELPHI. Новости мира компонент, FAQ, статьи...


Информационный Канал Subscribe.Ru

Ежедневная рассылка сайта Мастера DELPHI

DELPHIMASTER.ru

Выпуск от 07.08.03 09:04

Вышел очередной дайджест форумов. Скачать можно здесь
Кое-что из нашей кладовки   |x|
  • Delphi World ____Nikolay delphiworld@mail.ru   (07.08.03 05:26)
    Delphi World - самый большой архив статей по Delphi --= 3000 работ =--
    »»» Скачать: исходные тексты посмотреть скриншот
  • Battery 1.0b SniZ sniz@tut.by   (06.08.03 18:33)
    Для нотебука.
    Показывает сколько батареи засталося
    »»» Скачать: исходные тексты (191кб)
  • Delphi World ____Nikolay delphiworld@mail.ru   (07.08.03 05:25)
    Delphi World - самый большой архив статей по Delphi --= 3000 работ =--
    »»» Скачать: исходные тексты
  • DB Doctor (восстановление таблиц Paradox) Dred2k dred2k@mail.ru   (29.07.03 14:59)
    Программа предназначена для полного восстановления поврежденных таблиц Paradox версии 4.0 и выше.
    Основана на функциях tutil32.dll (версия 5.0.0.38 включена в архив), имеет диалоговый и автоматический режимы. От аналогичных средств отличается расширенным сервисом и корректной отработкой некоторых ошибочных ситуаций, возникающих при восстановлении таблиц.
    »»» Скачать: исходные тексты (690кб) посмотреть скриншот
  • Battery 1.0b SniZ sniz@tut.by   (06.08.03 18:47)
    Для нотебука.
    Показывает сколько батареи засталося
    »»» Скачать: исходные тексты (191кб) посмотреть скриншот
  • Delphi World ____Nikolay delphiworld@mail.ru   (07.08.03 05:25)
    Delphi World - самый большой архив статей по Delphi --= 3000 работ =--
    »»» Скачать: исходные тексты
Лучшее из нашего FAQ   |x|
Как создать свою кнопку в заголовке формы (на Caption Bar)
Непосредственно такой функции вроде нет, но можно изловчиться. Нарисовать там кнопку вручную и обрабатывать команды нажатия мышки на Caption Bar.
Пример.




unit Main;
interface
uses
Windows, Buttons, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
TForm1 = class(TForm)
procedure FormResize(Sender: TObject);
private
CaptionBtn : TRect;
procedure DrawCaptButton;
procedure WMNCPaint(var Msg : TWMNCPaint); message WM_NCPaint;
procedure WMNCActivate(var Msg : TWMNCActivate); message WM_NCACTIVATE;
procedure WMSetText(var Msg : TWMSetText); message WM_SETTEXT;
procedure WMNCHitTest(var Msg : TWMNCHitTest); message WM_NCHITTEST;
procedure WMNCLButtonDown(var Msg : TWMNCLButtonDown); message WM_NCLBUTTONDOWN;
public
{ Publ! ic declarations }
end;

var
Form1: TForm1;

implementation
const
htCaptionBtn = htSizeLast + 1;
{$R *.DFM}

procedure TForm1.DrawCaptButton;
var
xFrame, yFrame, xSize, ySize : Integer;
R : TRect;
begin
//Dimensions of Sizeable Frame
xFrame := GetSystemMetrics(SM_CXFRAME);
yFrame := GetSystemMetrics(SM_CYFRAME);

//Dimensions of Caption Buttons
xSize := GetSystemMetrics(SM_CXSIZE);
ySize := GetSystemMetrics(SM_CYSIZE);

//Define the placement of the new caption button
CaptionBtn := Bounds(Width - xFrame - 4*xSize + 2,
yFrame + 2, xSize - 2, ySize - 4);

//Get the handle to canvas using Form's device context
Canvas.Handle := GetWindowDC(Self.Handle);

Canvas.Font.Name := 'Symbol';
Canvas.Font.Color := clBlue;
Canvas.Font.Style := [fsBold];
Canvas.Pen.Color! := clYellow;
Canvas.Brush.Color := clBtnFace;

try
DrawButtonFace(Canvas, CaptionBtn, 1, bsAutoDetect, False, False, False);
//Define a smaller drawing rectangle within the button
R := Bounds(Width - xFrame - 4 * xSize + 2,
yFrame + 3, xSize - 6, ySize - 7);
with CaptionBtn do
Canvas.TextRect(R, R.Left + 2, R.Top - 1, 'W');
finally
ReleaseDC(Self.Handle, Canvas.Handle);
Canvas.Handle := 0;
end;
end;

procedure TForm1.WMNCPaint(var Msg : TWMNCPaint);
begin
inherited;
DrawCaptButton;
end;

procedure TForm1.WMNCActivate(var Msg : TWMNCActivate);
begin
inherited;
DrawCaptButton;
end;

procedure TForm1.WMSetText(var Msg : TWMSetText);
begin
inherited;
DrawCaptButton;
end;

procedure TForm1.WMNCHit! Test(var Msg : TWMNCHitTest);
begin
inherited;
with Msg do
if PtInRect(CaptionBtn, Point(XPos - Left, YPos - Top)) then
Result := htCaptionBtn;
end;

procedure TForm1.WMNCLButtonDown(var Msg : TWMNCLButtonDown);
begin
inherited;
if (Msg.HitTest = htCaptionBtn) then
ShowMessage('You hit the button on the caption bar');
end;

procedure TForm1.FormResize(Sender: TObject);
begin
//Force a redraw of caption bar if form is resized
Perform(WM_NCACTIVATE, Word(Active), 0);
end;

end.

»»» Прислать свои комментарии

Обсуждается в конференциях   |x|
У нас большой выбор статей   |x|
Технологии от BoldSoft: новый взгляд на проектирование ИС
Общий обзор архитектуры, созданной компанией BoldSoft.
Новинки книжного рынка   |x|
Photoshop 7. Для профессионалов(+CD)
Эта книга посвящена последней версии Photoshop - самой популярной программы для работы с растровой графикой. В ней рассматриваются не только новые возможности пакета, но подробно и последовательно рассказывается обо всех средствах, которые дает Photoshop в руки профессионального художника-графика или фотографа для решения самых разнообразных задач. Ориентация на опытных пользователей позволила включить в книгу достаточно сложные упражнения. Прилагаемый к книге компакт-диск содержит электронные версии примеров к книге, дополнительные электронные главы с описанием программы ImageReady, инструментов для подготовки изображений для Интернета, а также демонстрационные версии фильтров разных фирм и программы с ограниченным сроком использования.
Автор: Петров М. Н.
Другие сайты о DELPHI   |x|
LMD-Tools SE
Более 100 компонентов абсолютно бесплатно!
напр.: LMDLabel с ротацией текста и 3D эффектом,
LMDTTrayIcon,LMDTGlobalHotKey,LMDOneInstance

» Оценка сайта: 2
Опрос населения :)
Как вы нашли наш сайт?
»»» Поисковая система
»»» Рассылка
»»» Ссылка с другого сайта
»»» Через каталог сайтов
»»» Друг посоветовал
»»» Случайно
Для души

Хокку дня
Кузнечик зеленый,
О чем ты кузнечишь? -
О зеленой, должно быть, тоске...

Афоризмы
Лучшее лекарство: принимать жизнь... такой, какая она есть.

Фраза дня
Привлекательные женщины отвлекают.

Дурацкие законы (информация предоставлена сайтом kurilka.com)
В Нью Хемпшире запрещено собирать на пляжах выброшенную морем зелень.
В Голливуде есть особое постановление, запрещающее прогонять по улицам более двух тысяч овец.

И на закуску коротенький анекдот
Беседуют две подруги:
- Доктор советует мне сменить работу...
- А ты что?
- А на что её менять, если я не работаю?!!

Фотоприколы.
Начните день с хорошего настроения!
http://www.delphimaster.ru/cgi-bin/prikol.pl?id=104


На этом позвольте откланяться и пожелать вам удачного дня.
Искренне ваш, Алексей (delphi@mastak.ru)

Добро пожаловать на сайт -= Мастера DELPHI =- 


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное