Форум: "WinAPI";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
ВнизПомогите с иконкой и ее обработкой Найти похожие ветки
← →
happyandry © (2005-06-28 10:35) [0]Добрый день! Есть задача создать следующее: Имеется файл, прога сидит в трее и отслеживая его (файл) с периодичностью в 5-10 сек рисует значок1 или значок2 в зависимости от содержания файла.
В файле одна строка, в ней меняется только один символ (путь к диску). Если можно, посоветуйте что-нить с конкретным примером.
← →
Ega23 © (2005-06-28 10:36) [1]Вот конкретный пример. Только не доделанный.
function TKdrConfigurator.LoginSettingsForm(var SrvName,
DBName: String): Boolean;
var
aForm:TForm;
eSrvName, eDBName : TEdit;
btnOK, btnCancel : TButton;
begin
try
aForm:=TForm.Create(Application);
try
With aForm do
begin
Width:=310;
Height:=140;
Font.Size:=10;
Position:=poScreenCenter;
BorderStyle:=bsDialog;
Caption:="Настройки соединения c БД";
end;
With TLabel.Create(aForm) do
begin
Parent:=aForm;
Left:=8;
Top:=13;
Caption:="Сервер";
end;
With TLabel.Create(aForm) do
begin
Parent:=aForm;
Left:=8;
Top:=45;
Caption:="Имя БД";
end;
eSrvName:=TEdit.Create(aForm);
With eSrvName do
begin
Parent:=aForm;
Left:=90;
Width:=203;
Top:=10;
Text:=SrvName;
end;
eDBName:=TEdit.Create(aForm);
With eDBName do
begin
Parent:=aForm;
Left:=90;
Width:=203;
Top:=42;
Text:=DBName;
end;
With TButton.Create(aForm) do
begin
Parent:=aForm
end;
finally
aForm.Free;
end;
except
Result:=False;
end;
end;
← →
-=XP=- © (2005-06-28 10:49) [2]2 Ega23
Извините, у Вас хорошее настроение или температура?
← →
happyandry © (2005-06-28 10:53) [3]:))))))))))))
← →
-=XP=- © (2005-06-28 10:54) [4]Ega23 © (28.06.05 10:36) [1]
Кажется мне, что ни то, ни другое. Только жестоко это. :-/
:о)
← →
happyandry © (2005-06-28 10:55) [5]Ega 23: с моим вопросом это как соотносится? :)
← →
Anatoly Podgoretsky © (2005-06-28 10:55) [6]happyandry © (28.06.05 10:35)
Программы в трее не сидят.
Для работы с иконками в трее существует всего одна единственная функция Shell_NotifyIcon
← →
Ega23 © (2005-06-28 11:29) [7]2 happyandry © (28.06.05 10:55) [5]
Ega 23: с моим вопросом это как соотносится? :)
А никак. Ты вопрос свой читал? Я, например, нифига не понял. :о)
2 -=XP=- © (28.06.05 10:54) [4]
Кажется мне, что ни то, ни другое. Только жестоко это. :-/
Да настроение что-то non vaginus, non rotes legionus...
← →
Digitman © (2005-06-28 11:55) [8]
> прога сидит в трее
а почему не лежит или не стоит ?
см. [6]
то что в трее нарисована какая-то иконка, вовсе не говорит о том , что там кто-то или что-то "сидит, лежит или стоит"
так что тебе посоветовать ? конкретно ?
← →
Игорь Шевченко © (2005-06-28 11:58) [9]
> Я, например, нифига не понял.
Ну эта...можно понималку настроить :)
Собстна, по таймеру проверяется файл, в зависимости от содержимого этого файла в облати уведомлений отображаются разыне иконки. Тоже мне, бином Ньютона.
← →
-=XP=- © (2005-06-28 11:58) [10]Я, например, нифига не понял.
Да вроде бы все понятно.
Только это не вопрос.
Это предварительное ТЗ на небольшую утилитку.
Поэтому "посоветуйте что-нить с конкретным примером" не проходит.
Есть конкретные вопросы - задавайте.
← →
Virgo_Style © (2005-06-28 13:51) [11]happyandry © (28.06.05 10:35)
посоветуйте что-нить
Для этого можно написать программу...
> с конкретным примером
...на Delphi 7.
← →
happyandry © (2005-06-28 14:42) [12]:), ребят...хотелось бы просто вместо высказываний и насмешек, кусок кода, который именно будет следить за изменениями файла, а с иконкой программы в трее я уж почти разобрался. Программа действительно там не сидит, спасибо всем за уточнения :)
← →
alpet © (2005-06-28 14:52) [13]Keywords: SetTimer, TimerProc.
procedure TimeProc (hwnd, msg, id, time: dword);
begin
if CheckFile ("some.txt") then SetIcon_1 else SetIcon_2;
end;
// In program initialization code
SetTimer (0, 0, 1000, TimerProc);
← →
happyandry © (2005-06-28 15:24) [14]2 alpet: tnx.
← →
alpet © (2005-06-28 15:49) [15]MSDN
Therefore, you need to dispatch messages in the calling thread, even when you use TimerProc instead of processing WM_TIMER
You need also make thread message loop:
var msg: tagMsg;
begin
// WARN: Keyboard message not translated.
while GetMessage (msg) do DispatchMessage (msg);
end;
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 4.395 c