Вверх ↑
Этот топик читают: Гость
Ответов: 1321
Рейтинг: 37
#166: 2011-03-13 20:27:37 ЛС | профиль | цитата
===Удалил===
карма: 0

0
файлы: 1code_22942.txt [951B] [199]
Ответов: 952
Рейтинг: 4
#167: 2011-03-13 20:30:38 ЛС | профиль | цитата
Мне надо не своего приложения а другой программы.
И кстати в Вашей схеме опять же ничего не приходит на Caption.
карма: 0

0
Ответов: 1321
Рейтинг: 37
#168: 2011-03-13 20:34:39 ЛС | профиль | цитата
Надо надпись ,смотри примеры
code_22944.txt
------------ Дoбавленo в 20.34:
Ну или вот

Add(MainForm,10156103,84,259)
{
Point(Handle)
link(onCreate,12383078:doEvent1,[])
}
Add(FindWindow,5846319,336,308)
{
Point(ChildHandle)
}
Add(MultiElementEx,6638574,210,217)
{
}
BEGIN_SDK
Add(EditMultiEx,15148873,21,21)
{
WorkCount=#16:doRead=1parametr|13:doWrite=Vokno|
VarCount=#10:Part=zagol|
DataCount=#10:Value=okno|
Width=216
Height=144
link(doRead,4227785:doRead,[(31,27)(31,111)(77,111)(77,76)])
link(doWrite,4227785:doWrite,[(59,34)(59,83)])
link(Part,15551448:Value,[(27,133)(209,133)])
}
Add(Ini,4227785,98,70)
{
FileName="Option.ini"
Section="okno"
Key="o1"
Type=1
link(onResult,15551448:doValue,[])
link(Value,15148873:Value,[(125,46)(27,46)])
}
Add(Memory,15551448,203,70)
{
Default=String(ццуц)
}
END_SDK
Add(WinTools,27292,343,350)
{
Point(doCaption)
link(Handle,10156103:Handle,[(349,344)(90,344)])
link(Text,6638574:Part,[(356,300)(216,300)])
}
Add(Hub,12383078,140,273)
{
link(onEvent1,6638574:doRead,[(185,279)(185,223)])
link(onEvent2,27292:doCaption,[(248,286)(248,384)])
}



Данные-же приходят
карма: 0

0
файлы: 1code_22944.txt [604B] [197]
Ответов: 952
Рейтинг: 4
#169: 2011-03-13 20:35:16 ЛС | профиль | цитата
Мне надо указать Caption искомого окна (это не окно моей программы, предположим что это дэфолтовое окно notepad.exe) для дальнейшего манипулирования им. Окно может быть как скрытое так и развернутое.
карма: 0

0
Ответов: 1321
Рейтинг: 37
#170: 2011-03-13 20:37:23 ЛС | профиль | цитата
code_22945.txt
Поиск окон
карма: 0

0
файлы: 1code_22945.txt [2.5KB] [230]
Ответов: 952
Рейтинг: 4
#171: 2011-03-13 20:48:09 ЛС | профиль | цитата
Откуда они приходят? У меня на форме компонент Edit в него из ini считывается Caption окна которое будем искать. Caption может меняться поэтому и вынес в ini.
В ваших примерах все приходит из окна своего же приложения.

------------ Дoбавленo в 20.41:
Такая каракатица для поиска окна? А какой смысл тогда в компоненте FindWindow и его верхних точках?
------------ Дoбавленo в 20.47:
Может есть какой-то вариант попроще с подачей компоненту FindWindow необходимых параметров типа класс окна и заголовок?
Приведенные выше схемы не очень впечатляют, тем более при учете что если нужные свойства прописать в компоненте то свои функции он исполняет.
карма: 0

0
Ответов: 1321
Рейтинг: 37
#172: 2011-03-13 20:51:30 ЛС | профиль | цитата
Первое
code_22946.txt
Данные приходят,
Второе ,опиши конкретно свою задачу
карма: 0

0
файлы: 1code_22946.txt [284B] [136]
Ответов: 952
Рейтинг: 4
#173: 2011-03-13 20:58:28 ЛС | профиль | цитата
Примерно так.
code_22947.txt
Задача - манипулировать заданным окном - сворачивать, уничтожать и т.д.
Вот и не могу разобраться как подавать на FindWindow и имя класса искомого окна и его заголовок.
карма: 0

0
файлы: 1code_22947.txt [1.3KB] [220]
Ответов: 1321
Рейтинг: 37
#174: 2011-03-13 21:39:41 ЛС | профиль | цитата
Add(MainForm,2953706,119,238)
{
Width=571
Height=494
link(onCreate,1159849:doWork2,[])
}
Add(Edit,13812777,126,329)
{
Left=70
Top=140
Width=140
link(onChange,12929189:doCaption,[])
}
Add(Label,4807150,112,133)
{
Left=75
Top=40
Width=30
Height=17
Caption="Окно"
}
Add(Label,324556,112,168)
{
Left=70
Top=120
Width=48
Height=17
Caption="Надпись"
}
Add(WinTools,12929189,210,301)
{
Point(doCaption)
link(Handle,20258:Handle,[])
}
Add(WinEnum,20258,210,252)
{
link(Caption,5667558:Text,[])
}
Add(Edit,5667558,210,168)
{
Left=75
Top=60
Width=145
link(onChange,1159849:doWork1,[(254,174)(254,214)(186,214)])
}
Add(HubEx,1159849,182,252)
{
link(onEvent,20258:doFind,[(199,258)(199,265)])
}


Вот, держи
Вводи любой заголовок окна ,и изменяй его, на основе этого делай любые операции
------------ Дoбавленo в 21.12:

Add(MainForm,2953706,126,252)
{
Width=571
Height=494
}
Add(Edit,13812777,126,399)
{
Left=70
Top=140
Width=140
link(onChange,12929189:doCaption,[])
}
Add(Label,324556,126,217)
{
Left=70
Top=120
Width=48
Height=17
Caption="Надпись"
}
Add(WinTools,12929189,210,371)
{
Point(doCaption)
link(Handle,20258:Handle,[])
}
Add(WinEnum,20258,210,280)
{
link(Caption,5667558:Text,[])
}
Add(Edit,5667558,210,217)
{
Left=75
Top=60
Width=145
Text=""
}
Add(Button,13488148,126,287)
{
Left=75
Top=80
Width=145
Color=145
Caption="Искать"
link(onClick,20258:doFind,[])
}
Add(Button,7981035,126,364)
{
Left=70
Top=165
Color=165
Caption="Закрыть"
link(onClick,12929189:doClose,[(184,370)(184,398)])
}
Add(Button,16673658,126,329)
{
Left=115
Top=325
Color=325
Caption="Скрыть"
link(onClick,12929189:doVisible,[(189,335)(189,377)])
}
Вот то что ты хочишь

карма: 0

1
файлы: 1code_22948.txt [882B] [210]
Голосовали:user_asm
Ответов: 952
Рейтинг: 4
#175: 2011-03-13 23:35:23 ЛС | профиль | цитата
В вашей схеме работает и данные приходят. В моей - нет Парадокс Бред. Зависит ли это от того что Edit расположен внутри ChildGroupBox а WinEnum за его пределами?
Жесть, с WinTools похоже та же история ..... EnumProcess то же .... емае а как же передавать параметры?
карма: 0

0
Ответов: 1321
Рейтинг: 37
#176: 2011-03-15 11:50:20 ЛС | профиль | цитата
а в Hiasm есть панель подобная панели элементов, и панели свойств?
карма: 0

0
Ответов: 1528
Рейтинг: 57
#177: 2011-03-15 16:25:52 ЛС | профиль | цитата
Roma, кажется можно только криво сымитировать
карма: 0

0
Ответов: 1321
Рейтинг: 37
#178: 2011-03-15 22:00:16 ЛС | профиль | цитата
[flood]Я это уже понял[/flood]
------------ Дoбавленo в 21.59:

#pas
unit hiBeep;

interface

uses Kol,Share,Windows,Debug;

type
THIBeep = class(TDebug)
private
public
_prop_Freq:integer;
_prop_Duration:integer;
_data_Duration:THI_Event;
_data_Freq:THI_Event;
_event_onBeep:THI_Event;

procedure _work_doBeep(var _Data:TData; Index:word);
end;

implementation

procedure THIBeep._work_doBeep;
var fr,dr:integer;
ob:string;
begin
fr := ReadInteger(_Data,_data_Freq,_prop_Freq);
dr := ReadInteger(_Data,_data_Duration,_prop_Duration);
ob := fr,',dr;
if fr < 40 then fr := 40;
if fr = 0 then sleep(dr) else Beep(fr,dr);
_hi_CreateEvent(_Data, @_event_onBeep, ob);
end;

end.
ob := fr,',dr;
Как правильно соединить переменные Fr и Dr


карма: 0

0
Ответов: 8895
Рейтинг: 823
#179: 2011-03-15 22:57:21 ЛС | профиль | цитата
Roma, ob := fr+'+dr;, а зачем нужно '
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#180: 2011-03-15 23:16:19 ЛС | профиль | цитата
ob:= int2str(fr)++int2str(dr);
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)