ПредишенСледващото

Сега ние разгледаме един интересен техника - как да се показва текстът под ъгъл. Както можете да видите, досега тя е била използвана само функция, която може да показва текст хоризонтално, и не повече от намек за възможността да раздира изтегли текста и напишете това, например, вертикално.

Създаване на нов проект. Сега се създаде манипулатор събитие за основната форма oncreate. При тази процедура, въведете следното:

процедура TForm1.FormCreate (Sender: TObject);

частен индекс: цяло число; CL: булева;

Основни препарати са завършени, а ние може да отиде директно програмиране. Прехвърляне на променливи, ние ще обсъдим по-късно, но сега, създайте манипулатор събитие за основната форма # 111; nmousedown. Това събитие се задейства, когато потребителят кликне върху формата.

Бърз старт в Делфи - Страница 2
Разбира се, името на тази част доста неясно и не е точно, защото самият Windows и цялата работа по графика се извършва в графичен режим. И все пак понякога ние работим с текста, това лечение като текст, а понякога и в текста се появява под формата на графики.

За да се покаже текст на екрана на обекта TCanvas има метод Textout. Този метод се състои от три параметъра:

  • х - координиране на позицията на текста;
  • у - координиране на позицията на текста;
  • директна линия от текст, който трябва да бъде изведена. Създаване на нова заявка за OnPaint събитието, пишете код:

Canvas.TextOut (100100, "Здравейте всички. ');

Тя произвежда показване на текст в координатите (100, 100). За стила на шрифта отговаря собственост на шрифта TCanvas обект. Този имот също има тип обект (TFont), който има много качества. Сред тях, разбира се, има и цвят имот, така че сложи на един бутон на формата и coiorDialog, така че можете да промените цвета на текста.

за събития # 111; nЩракнете върху бутон, въведете следното:

ако ColorDialogl.Execute след FormPaint (нула);

За опции четка отговаря на четка собственост на TCanvas. Както вече бе споменато, четката се използва за запълване на затворени пространства. Той също така разполага с тип обект, като молив, и следователно има свои собствени свойства и методи.

четка Задача TBrush има няколко свойства, които влияят варианти на четките.

  • Bitmap - снимка, която ще се използва като фон запълване.

Формат на изображението трябва да бъде 8x8 пиксела. Ако е повече, те ще бъдат включени само най-горния ляв площад 8x8 пиксела.

Бърз старт в Делфи - Страница 2
Сега нека видим цвета, и успоредно с това ще се запознаете с графичните функции. Както вече знаете, ние сме свикнали да изготвят двете понятия цветове- цвят химикалка и цвят четка. За молив стил (включително цвят) отговаря СОБСТВЕНОСТ Rep TCanvas обект. За STYLE HAND Brush отговорен СОБСТВЕНОСТ. И четка и писалка - това е и обектите. Те имат свой собствен имот, който обсъждаме в тази статия.

За да започнете, нека да се справят с обекта на празни приказки. Той има редица свойства. Нека ги разгледаме.

  • цвят - цветен молив.
  • Handle- тук е описание на един молив, който може да се използва, когато се прилага директно към WinAPI-функции.

ЗАБЕЛЕЖКА. Повечето обекти са с дръжка собственост, която е необходима само за API-функции. При нормални програми няма да го използваме.

  • Mode - режим на дисплея, който показва как ще се тегли на линията.
  • стил- стил молив. Следните стилове (графичен дисплей на стилове линии можете да видите в графиката по-долу.)
  • psSolid - плътна линия;
    • psDash- линия като пунктирана линия (тя се състои от къси линии);
  • psDot - съответствие с точки;
  • psDashDot- линия с променлив тирета и точки;
  • psDashDotDot линия с променлив тирета и две точки;
  • psciear - невидима линия;
  • psInsideFrame - Линия в матрицата (изглежда като твърдо вещество).
  • ширина - ширината на молив.

Бърз старт в Делфи - Страница 2
Нека се опитаме да напише един прост пример, който ще се боядисват на регулярна квадрат. Но за да усложни задачата ще бъде да се направи с квадратна форма, а вътре TPaintBox компонент, който е много подходящ за тази цел.

Създаване на ново заявление и го поставете кутия с бои компонент от раздела на компонента палитра. Опитайте се да поставите компонент в долната половина на прозореца.

В форма и да има кутия с бои платно собственост, така че те могат да черпят. Ри-пръкват е най-добре върху събитие OnPaint, които също имат два компонента. Така че, създайте OnPaint събитие за формата, и след това да напишете следното:

Ето, ние наричаме метода на правоъгълник обект платното на нашия вид. Този метод има четири параметри.

  1. Левия квадрат позиция.
  2. Горна квадратен позиция.
  3. Право позиция.
  4. Долна позиция.

Сега изберете кутия с бои компоненти и създават едно и също събитие манипулатор OnPaint за този компонент. В него пише следното: PaintBoxl.Canvas.Rectangle (10,10,100,100);

Това изисква по същия метод със същите параметри, само кутия с бои. Това означава, че този квадрат ще бъде изтеглен вече вътре кутия с бои компонент.

Опитайте се да стартирате приложението, и ще видите две полета (фиг. 12.2). И двете са изготвени с помощта на метод правоъгълник със същите параметри и, на теория, трябва да бъдат боядисани в един и също място. В действителност обаче това не е така, защото първият квадрата е съставен от формата, и неговите координати са относителни към матрицата (10, 0, 100, 100), и второ в компонент, и неговите координати се измерват по отношение на този компонент (10 , 0, 100, 100).

Защо в примера изготвяне про идва точно манипулатор soby-среда OnPaint? Само едно събитие се генерира, то ruetsya всеки път, когато имате нужда от заявление и поставете квадратен чертеж код, за да манипулатора Onshow събития. В най-добрия, ще видите квадрат, но ако се минимизира прозореца или просто още един блок и след това да го отворите отново, на площада ще изчезне.

TIP. Windows не помни график, който беше в прозореца и да разчита на вашата програма. Единственото нещо, което прави OC насочва програма Paint събитие (WM_PAINT), което показва необходимостта от независим преначертаване на-съдържание на прозореца. Ето защо е желателно да се получи рисунка в OnPaint манипулатор, или най-малкото защото това, за да функционира, което ще възстанови разписанието по желание-разходка в прозореца.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!