<?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; Sender</title>
	<atom:link href="http://www.mydelphi.info/code/tag/sender/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.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Как зарегистрировать расширение файла за своим приложением и контекстное меню</title>
		<link>http://www.mydelphi.info/code/189</link>
		<comments>http://www.mydelphi.info/code/189#comments</comments>
		<pubDate>Mon, 09 Jun 2008 16:39:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[Click]]></category>
		<category><![CDATA[command]]></category>
		<category><![CDATA[DefaultIcon]]></category>
		<category><![CDATA[description]]></category>
		<category><![CDATA[LotsOfParamaters]]></category>
		<category><![CDATA[MyApp]]></category>
		<category><![CDATA[myext]]></category>
		<category><![CDATA[Sender]]></category>
		<category><![CDATA[TForm]]></category>
		<category><![CDATA[TObject]]></category>
		<category><![CDATA[TonsOfParameters]]></category>
		<category><![CDATA[TRegIniFile]]></category>
		<category><![CDATA[WriteString]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=189</guid>
		<description><![CDATA[Вопрос:
Как зарегистрировать расширение файла за своим приложением и контекстное меню,
связанное с этим типом?
Ответ:
Пример регистрирует расширение файла(.myext) - файлы этого типа будут открываться
приложением MyApp.Exe. Также регнстрируется одно действие (action) по умолчанию
для файлов этого типа и два дополнительных пункта контекстного меню, связанного с
этим типом файлов. Возможно, потребуется перезайти в систему чтобы изменения

вступили в силу.

Пример:

uses
	Registry;

procedure TForm1.Button1Click(Sender: TObject);
var
	R : [...]]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/189/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как программно заставить выпасть меню?</title>
		<link>http://www.mydelphi.info/code/182</link>
		<comments>http://www.mydelphi.info/code/182#comments</comments>
		<pubDate>Mon, 09 Jun 2008 16:34:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[Alt]]></category>
		<category><![CDATA[DOWN]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[KEYUP]]></category>
		<category><![CDATA[painting]]></category>
		<category><![CDATA[ProcessMessages]]></category>
		<category><![CDATA[Sender]]></category>
		<category><![CDATA[TForm]]></category>
		<category><![CDATA[TObject]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=182</guid>
		<description><![CDATA[Вопрос:
Как программно заставить выпасть меню?

Ответ:
В примере показано как
показать меню и выбрать в нем какой-то пункт, эмулируя нажатие &#8220;быстрой кдавиши&#8221;
пункта меню. Если у Вашего пункта меню нет &#8220;быстрой клавиши&#8221; Вы можете посылать
комбинации VK_MENU, VK_LEFT, VK_DOWN, и VK_RETURN, чтобы программно &#8220;путешествовать&#8221;
по меню.
Пример:
procedure TForm1.Button1Click(Sender: TObject);
begin
	//Allow button to finish painting in response to the click
	Application.ProcessMessages;
	{Alt Key Down}
	keybd_Event(VK_MENU, 0, 0, [...]]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/182/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как обновить список дисков компонента TDriveComboBox</title>
		<link>http://www.mydelphi.info/code/181</link>
		<comments>http://www.mydelphi.info/code/181#comments</comments>
		<pubDate>Mon, 09 Jun 2008 16:33:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[BuildList]]></category>
		<category><![CDATA[char]]></category>
		<category><![CDATA[Drive]]></category>
		<category><![CDATA[procedure]]></category>
		<category><![CDATA[Sender]]></category>
		<category><![CDATA[TDriveComboBox]]></category>
		<category><![CDATA[TForm]]></category>
		<category><![CDATA[TNewDriveComboBox]]></category>
		<category><![CDATA[var]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=181</guid>
		<description><![CDATA[Вопрос:
Как обновить список дисков компонента TDriveComboBox, учитывая, что могуд быть
подключены/отключены сетевые диски и произведена "горячая замена" plug&#38;play дисков?
Ответ:
Следующий пример вызывает защищенный (protected) метод класса TDriveComboBox
BuildList() для регеирации списка дисков. (использовая так наз. "class cracer")

Пример:

type
	TNewDriveComboBox = class(TDriveComboBox)  //это наш "class cracer"
end;

procedure TForm1.Button1Click(Sender: TObject);
var
	Drive : char;
begin
	Drive := DriveComboBox1.Drive;
	TNewDriveComboBox(DriveComboBox1).BuildList;
			//вызываем защищенный метод родительского класса
	DriveComboBox1.Drive := Drive;
end;

]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/181/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как сообщить всем формам моего приложения об изминении каких-то глобальных значений?</title>
		<link>http://www.mydelphi.info/code/180</link>
		<comments>http://www.mydelphi.info/code/180#comments</comments>
		<pubDate>Mon, 09 Jun 2008 16:32:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[AMessage]]></category>
		<category><![CDATA[Click]]></category>
		<category><![CDATA[DFM]]></category>
		<category><![CDATA[FormCount]]></category>
		<category><![CDATA[FormShow]]></category>
		<category><![CDATA[implementation]]></category>
		<category><![CDATA[message]]></category>
		<category><![CDATA[Perform]]></category>
		<category><![CDATA[preform]]></category>
		<category><![CDATA[Sender]]></category>
		<category><![CDATA[TButton]]></category>
		<category><![CDATA[TLabel]]></category>
		<category><![CDATA[UMMyGlobalMessage]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=180</guid>
		<description><![CDATA[Вопрос:
Как сообщить всем формам моего приложения (в том числе и не видимым в данный момент)
об изминении каких-то глобальных значений?
Ответ:
Один из способов - создать пользовательское сообщение и использовать метод preform
чтобы разослать его всем формам из массива Screen.Forms.

Пример:

{Code for Unit1}

const
	UM_MyGlobalMessage = WM_USER + 1;

type
	TForm1 = class(TForm)
		Label1: TLabel;
		Button1: TButton;
		procedure FormShow(Sender: TObject);
		procedure Button1Click(Sender: TObject);
   private
		{Private declarations}
		procedure UMMyGlobalMessage(var [...]]]></description>
		<wfw:commentRss>http://www.mydelphi.info/code/180/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как поместить прозрачную фоновую каринку на компонент CoolBar?</title>
		<link>http://www.mydelphi.info/code/173</link>
		<comments>http://www.mydelphi.info/code/173#comments</comments>
		<pubDate>Mon, 09 Jun 2008 16:25:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Delphi FAQ]]></category>
		<category><![CDATA[bitmap]]></category>
		<category><![CDATA[Brush]]></category>
		<category><![CDATA[BrushCopy]]></category>
		<category><![CDATA[ClWhite]]></category>
		<category><![CDATA[DownLoad]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[LOADFROMFILE]]></category>
		<category><![CDATA[Rect]]></category>
		<category><![CDATA[Sender]]></category>
		<category><![CDATA[TForm]]></category>

		<guid isPermaLink="false">http://www.mydelphi.info/?p=173</guid>
		<description><![CDATA[Вопрос:
Как поместить прозрачную фоновую каринку на компонент CoolBar?
Ответ:
procedure TForm1.Button1Click(Sender: TObject);
var
	Bm1 : TBitmap;
	Bm2 : TBitmap;
begin
	Bm1 := TBitmap.Create;
	Bm2 := TBitmap.Create;
	Bm1.LoadFromFile('c:\download\test.bmp');
	Bm2.Width := Bm1.Width;
	Bm2.Height := Bm1.Height;
	bm2.Canvas.Brush.Color := CoolBar1.Color;
	bm2.Canvas.BrushCopy(Rect(0, 0, bm2.Width, bm2.Height), Bm1,
			Rect(0, 0, Bm1.width, Bm1.Height), ClWhite);
	bm1.Free;
	CoolBar1.Bitmap.Assign(bm2);
	bm2.Free;
end;

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

