Съвети за Delphi

Как да работим с палитра в Делфи? На форма набор TImage и видимия образ (* .BMP файл), как да се промени цвета си палитра.

TBitmap в палитрата и TMetaFile достъпна чрез имот Palette. Ако има палитра (което не е задължително), Палета<>0:

Платно модел изпълва настолни даде координати.

Функция PaintDesktop (HDC). булева;
Например: PaintDesktop (form1.Canvas.Handle);

Как да вмъкнете растерни изображения в компонент ListBox?

За да направите това, трябва да се инсталира в обекта инспектор Style областта на lbOwnerDrawFixed, височина фиксирана линия или lbOwnerDrawVariable на, с променлива и поставяте своя манипулатор събитие за OnDrawItem. В този манипулатор, и че е необходимо да се направи растерна графика.
например:
Наравно имидж на 32 * 16 (стандартна резолюция глиф за Delphi). Това е много полезно, когато търсите изображения за вашите бутони!
Разположен в обекта инспектор в полето ListBox ItemHeight = 19 и областта Color = clBtnFace.

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

Можем ли да се направи от Делфи във всяка част на екрана или в друг прозорец?

За да направите това, използвайте функциите на API. Вземи контекста на друг прозорец или на цял екран:
функционира GetDC (Вятърни: HWnd): HDC;
където Вятърни - указател към желания прозорец, или 0 за контекста на целия екран.
И по-нататък, всичко, което е необходимо, за да се направи с помощта на функциите на API.
например:

Да не забравяме и след манипулации си за изпращане на жертвите (или всички) на съобщението за прозорци за необходимостта да се преначертае да възстанови първоначалния си вид.

Писане ъгъл текст

RGB цветово преобразуване от HLS

Броят на цветовете (цветовата палитра) в този компютър

Тази функция връща броя на бита на пиксел в компютъра. Например, 8 - 256 цвята, 4 - 16 цвята.

Как да промените резолюцията на екрана по време на изпълнение на програмата

1) Приема се, че областта петно ​​(например, Pict)
2) да изисква Query.SQL писменото нещо подобно
"Избор на Pict от sometable където somefield = somevalue"
3) По искане е отворен
4) е "задача":
Image1.Picture.Assing (TBlobField (Query.FieldByName ( "Pict"))
или, ако е известно, че тази картина - Bitmap, можете да
Image1.Picture.Bitmap.Assing (TBlobField (Query.FieldByName ( "Pict"))

И можете да използвате TDBImage компонента.

Как да премахнете иконата от EXE- и DLL файл (ExtractAssociatedIcon) и го покажете на Timage компонент или на малка площ на формата?

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

Var IconIndex. дума; ч. HICON;

започне IconIndex: = 0; Н = ExtractAssociatedIcon (hInstance, "C: \ WINDOWS \ notepad.exe. IconINdex); DrawIcon (Form1.Canvas.Handle, 10, 10, з);