Мой DELPHI – Программирование

Всё для программера

Как во время выполнения определить поддерживает ли обьект заданное свойство?

Вопрос:
Как во время выполнения определить поддерживает ли обьект заданное свойство?
Ответ:
function HasProperty(Obj : TObject; Prop : string) : PPropInfo;
begin
	Result := GetPropInfo(Obj.ClassInfo, Prop);

end; Прочитать остальную часть записи »

В чем отличие между Create(Self) и Create(Application)?

Вопрос:
В чем отличие между Create(Self) и Create(Application)?

Ответ:

Self может быть использовано
только в методе класса, и ссылается на текущий экземпляр класса. Таким образом
“Self” в методе класса TForm1 ссылается на текущий экземпляр TForm1. При создании
компонента Вы передаете его владельца (owner) в конструктор. При уничтожении
формы или компонента автоматически уничтожаются и все компоненты владельцем
которого она является. Таким образом если при создании формы передать в качестве
владельца Application эта форма будет автоматически уничтожена при уничтожении
Application. Если же при создании формы передать в качестве владельца другую
форму, вновь созданная форма будет автоматически уничтоженна при уничтожении
формы-владельца.

Как показывать нестандартный встроенный редактор (inplace editor)

Вопрос:

Как показывать нестандартный встроенный редактор (inplace editor) в ячейке stringgrid (например combobox).

Ответ:
См. пример Прочитать остальную часть записи »

Создание PolyPolygon используя массив точек?

Вопрос:
Создание PolyPolygon используя массив точек?

Ответ:

Polygon – метод компонента
TCanvas получает в качестве параметра динамический массив точек. Функция PolyPolygon()
из Windows GDI получает указатель на массив точек. Прочитать остальную часть записи »

Мне нужен временный canvas

Вопрос:

Мне нужен временный canvas, но когда я пытаюсь его создать получаю сообщения об ошибках. Как создать TCanvas?

Ответ:

Создайте Bitmap и используйте
свойство canvas класса TBitmap. Пример создает Bitmap, рисует на его canvas’е,
выводит этот canvas на форму и освобождает bitmap. Прочитать остальную часть записи »