<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Мой DELPHI - Программирование &#187; Caption</title>
	<atom:link href="http://www.mydelphi.info/code/tag/caption/feed" rel="self" type="application/rss+xml" />
	<link>http://www.mydelphi.info</link>
	<description>Всё для программера</description>
	<lastBuildDate>Mon, 09 Jun 2008 16:55:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>TObject</title>
		<link>http://www.mydelphi.info/code/190</link>
		<comments>http://www.mydelphi.info/code/190#comments</comments>
		<pubDate>Mon, 09 Jun 2008 16:44:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[Caption]]></category>
		<category><![CDATA[ClassInfo]]></category>
		<category><![CDATA[ClassParent]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[InheritsFroin]]></category>
		<category><![CDATA[MyParent]]></category>
		<category><![CDATA[Object]]></category>
		<category><![CDATA[TCIass]]></category>
		<category><![CDATA[TForm]]></category>
		<category><![CDATA[TObject]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=190</guid>
		<description><![CDATA[
TObject
TObject является общим предком всех классов в Delphi, корнем
иерархии Visual Component Library. Tobject представляет собой абстрактный
класс, реализующий только наиболее общие механизмы, универсально разделяемые
всеми объектами VCL.
TObject автоматически используется как порождающий тип при создании
нового класса Delphi. Следовательно, следующие фрагменты кода имеют одно
и то же значение:
        type
     [...]]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/190/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как получить число и список всех компонентов, расположенных на TNoteBook?</title>
		<link>http://www.mydelphi.info/code/146</link>
		<comments>http://www.mydelphi.info/code/146#comments</comments>
		<pubDate>Mon, 09 Jun 2008 15:43:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[Button]]></category>
		<category><![CDATA[Caption]]></category>
		<category><![CDATA[ControlCount]]></category>
		<category><![CDATA[Controls]]></category>
		<category><![CDATA[EmptyStr]]></category>
		<category><![CDATA[Name]]></category>
		<category><![CDATA[procedure]]></category>
		<category><![CDATA[Sender]]></category>
		<category><![CDATA[TObject]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=146</guid>
		<description><![CDATA[Вопрос:
Как получить число и список всех компонентов, расположенных на TNoteBook?
Ответ:
В примере список выводится на Listbox.

Пример:

procedure TForm1.Button1Click(Sender: TObject);
var
	n: integer;
	p: integer;
begin
	ListBox1.Clear;
	with Notebook1 do
	begin
		for n := 0 to ControlCount - 1 do
		begin
			with TPage(Controls[n]) do
			begin
				ListBox1.Items.Add('Notebook Page: ' +
				TPage(Notebook1.Controls[n]).Caption);
				for p := 0 to ControlCount - 1 do
				ListBox1.Items.Add(Controls[p].Name);
				ListBox1.Items.Add(EmptyStr);
			end;
		end;
	end;
end;

]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/146/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как определить нажаты ли клавиши Shift, Alt, or Ctrl в какой-либо момент времени?</title>
		<link>http://www.mydelphi.info/code/135</link>
		<comments>http://www.mydelphi.info/code/135#comments</comments>
		<pubDate>Mon, 09 Jun 2008 15:34:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[Boolean]]></category>
		<category><![CDATA[Caption]]></category>
		<category><![CDATA[Form]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[GetKeyboardState]]></category>
		<category><![CDATA[MenuItem]]></category>
		<category><![CDATA[TKeyboardState]]></category>
		<category><![CDATA[TObject]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=135</guid>
		<description><![CDATA[Вопрос:
Как определить нажаты ли клавиши Shift, Alt, or Ctrl в какой-либо момент времени?

Ответ:
В приведенном примере
показано как определить нажата ли клавиша Shift при выборе строчки меню. Пример
также содержит функции проверки состояния клавиш Alt, Ctrl.
Пример:
function CtrlDown : Boolean;
var
	State : TKeyboardState;
begin
	GetKeyboardState(State);
	Result := ((State[vk_Control] And 128) &#60;&#62; 0);
end;

function ShiftDown : Boolean;
var
	State : TKeyboardState;
begin
	GetKeyboardState(State);
	Result := ((State[vk_Shift] and 128) &#60;&#62; 0);
end;

function [...]]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/135/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>События KeyPress и KeyDown не вызываются для клавиши Tab</title>
		<link>http://www.mydelphi.info/code/124</link>
		<comments>http://www.mydelphi.info/code/124#comments</comments>
		<pubDate>Sun, 08 Jun 2008 17:25:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[Caption]]></category>
		<category><![CDATA[DFM]]></category>
		<category><![CDATA[DIALOGKEY]]></category>
		<category><![CDATA[implementation]]></category>
		<category><![CDATA[KeyDown]]></category>
		<category><![CDATA[KeyPress]]></category>
		<category><![CDATA[TCMDialogKey]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=124</guid>
		<description><![CDATA[Вопрос:
События KeyPress и KeyDown не вызываются для клавиши Tab &#8211; как определить, что она была нажата?
Ответ:
На уровне формы клавиша
tab обычно обрабатывается Windows. В примере создается обработчик события CM_Dialog
для перехвата Dialog keys.
Пример:
type
	TForm1 = class(TForm)
	private
		procedure CMDialogKey( Var msg: TCMDialogKey );
		message CM_DIALOGKEY;
end;

var
	Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.CMDialogKey(var msg: TCMDialogKey);
begin
	if msg.Charcode &#60;&#62; VK_TAB then
		inherited;
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
	if [...]]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/124/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как узнать, что курсор мыши над моей формой?</title>
		<link>http://www.mydelphi.info/code/104</link>
		<comments>http://www.mydelphi.info/code/104#comments</comments>
		<pubDate>Sun, 08 Jun 2008 17:08:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[Caption]]></category>
		<category><![CDATA[ClientToScreen]]></category>
		<category><![CDATA[FormDeactivate]]></category>
		<category><![CDATA[FormMouseMove]]></category>
		<category><![CDATA[procedure]]></category>
		<category><![CDATA[TForm]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=104</guid>
		<description><![CDATA[Вопрос:
Как узнать, что курсор мыши над моей формой?
Ответ:
Можно использовать функцию GetCapture() из Windows API.

Примечание: Cм. документацию Windows для информации об ограничениях функции GetCapture.

Пример:

procedure TForm1.FormDeactivate(Sender: TObject);
begin
	ReleaseCapture;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
	If GetCapture = 0 then
		SetCapture(Form1.Handle);
	if PtInRect(Rect(Form1.Left,Form1.Top,Form1.Left + Form1.Width,
			Form1.Top + Form1.Height), ClientToScreen(Point(x, y))) then
		Form1.Caption := 'Мышка над формой!'
	else
		Form1.Caption := 'Мышка вне формы...';
end;

]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/104/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
