Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

postmessage - Как послать сообщение? [D7, XP]


Rav4 ©   (2008-11-10 13:00:00) 

Привет!

У меня такой вопрос.

В таймере с помощью FindWindow ищу имя папки.
Если папка найдена, то как правильно в мемо занести инфо о том, что папка была открыта?
У меня все время получается в цикле.
А нужно только один раз вывести строку.

т.е. примерно так:


12:00:23 - Новая папка. Открыта
12:24:19 - Мои документы. Открыта


sniknik   (2008-11-10 13:50:00) [1]

> Для начала нужны осознанные и вразумительные комментарии, что это за цикл и что ты делаешь в каждой его строчке...
дежавю...


Leonid Troyanovsky   (2008-11-10 13:49:00) [2]


> Rav4   (10.11.08 13:40) [4]

> Мастера, я с этой веткой согласен, что будут и тормоза и
> слезы.

Т.е., это, дейс-но, продолжение
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1226041538&n=18?

А что полезного извлечено из оного дидактического материала?

>      postmessage(findwindow(nil,'имя папки',),WM_CLOSE,0,
> 0);

Зачем нужно это аж Count-1 раз? Для несогласных?

> memo1.Lines.Add(datetostr(now)+' '+timetostr(now)+' ' +st+'
> '+'папка была открыта');

Кто такой st.

--
Regards, LVT.


Сергей М.   (2008-11-10 13:45:00) [3]


> что нужно сделать?


Для начала нужны осознанные и вразумительные комментарии, что это за цикл и что ты делаешь в каждой его строчке...


brother   (2008-11-10 13:45:00) [4]

ты может всеж код весь покажешь?

> form1.ListBox1.Items.Count-1


> st

это что?

если нужно 1 раз, то если она уже была открыта ставь флаг и если флаг например true, то запись в мемо не выводи уже


Rav4   (2008-11-10 13:40:00) [5]

Мастера, я с этой веткой согласен, что будут и тормоза и слезы.
Но иного пути я пока не знаю.


 for i:=0 to form1.ListBox1.Items.Count-1 do
 begin
     postmessage(findwindow(nil,'имя папки',),WM_CLOSE,0,0);
 end;


если в цикл занести
memo1.Lines.Add(datetostr(now)+' '+timetostr(now)+' ' +st+' '+'папка была открыта');

то запись крутится каждую секунду.

Подскажите пожалуйста, что нужно сделать?


sniknik   (2008-11-10 13:16:00) [6]

> И чего нужно  postmessage?
ну как чего... вот
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1226041538&n=18
> postmessage(findwindow(nil,pchar(st),),WM_CLOSE,0,0);


Leonid Troyanovsky   (2008-11-10 13:10:00) [7]


> Rav4   (10.11.08 13:00)  

> В таймере с помощью FindWindow ищу имя папки.

Что значит "имя папки"?
Например, у меня в проводнике не установлено:
Display the full path in the title bar.
И что тогда правильно заносить?
И чего нужно  postmessage?

--
Regards, LVT.


Сергей М.   (2008-11-10 13:03:00) [8]


> У меня все время получается в цикле.
> А нужно только один


Убери цикл и будет один раз


Наверх

Титульная страница Поиск, карта сайта Написать письмо