Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  165

•  TDictionary Custom Sort  3 338

•  Fast Watermark Sources  3 093

•  3D Designer  4 849

•  Sik Screen Capture  3 347

•  Patch Maker  3 554

•  Айболит (remote control)  3 662

•  ListBox Drag & Drop  3 015

•  Доска для игры Реверси  81 710

•  Графические эффекты  3 946

•  Рисование по маске  3 249

•  Перетаскивание изображений  2 631

•  Canvas Drawing  2 753

•  Рисование Луны  2 583

•  Поворот изображения  2 191

•  Рисование стержней  2 168

•  Paint on Shape  1 568

•  Генератор кроссвордов  2 236

•  Головоломка Paletto  1 767

•  Теорема Монжа об окружностях  2 232

•  Пазл Numbrix  1 685

•  Заборы и коммивояжеры  2 057

•  Игра HIP  1 282

•  Игра Go (Го)  1 230

•  Симулятор лифта  1 475

•  Программа укладки плитки  1 217

•  Генератор лабиринта  1 548

•  Проверка числового ввода  1 366

•  HEX View  1 497

•  Физический маятник  1 358

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Из региона формы вычитается регион надписи



Оформил: DeeCo

{ 

 When youu need a form like a tree or something else what do you do? Windows 
 provides the CreateRoundRectRegion() function that just cuts the edges of your 
 form. If you want to do something else, you need to completely draw your 
 region in a HDC (TCanvas) while Windows looks on your hand to learn it. 
 After this, you can set the new region to your form using the 'SetWindowRgn()' function. 

 And how to do this? Here you will find a simple example that just gives some text 
 and sets the region like it. Expand it by your mind! 

}

 var
   Form1: TForm1;
   HRgn: THandle;

 implementation

 {$R *.DFM}

 procedure TForm1.Button1Click(Sender: TObject);
 var
   s: string;
 begin
   DeleteObject(HRgn);
   s := InputBox('Region Text', 'Please enter some text to set to the region', 'CoolRgn');

   BeginPath(Canvas.Handle);
   with Canvas do
   begin
     Font.Name  := 'Comic Sans MS';
      Font.Size  := 64;
      Font.Style := [fsBold];
     TextOut(0, 0, s);
   end;

   EndPath(Canvas.Handle);
   HRgn := PathToRegion(Canvas.Handle);
   SetWindowRgn(Handle, HRgn, True);

   button1.Visible := False;
   Color           := clRed;
 end;

 procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
 begin
   DeleteObject(HRgn);
 end;

 procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
   Shift: TShiftState; X, Y: Integer);
 begin
   if Button = mbLeft then
   begin
     ReleaseCapture;
     SendMessage(Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
   end;
 end;







Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте