Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.17;
Скачать: CL | DM;

Вниз

Как манипулировать дочерними окнами?   Найти похожие ветки 

 
001   (2004-10-03 20:32) [0]

Есть MDIForm - Form1.
Есть класс дочернего окна (MDIChild), допустим TForm2;
Потенциально может быть создано неопределенное число этих окон.
Каждое из них создается по щелчку на строке в БД.  
Но если по этой строке уже кликали, т.е. окно уже было ранее создано (и не закрыто), то нужно не открывать еще одно такое же, а вынести на передний план то, ранее созданное.
Помогите реализовать.. механизм нужен.
Я хочу TForm2(FFF).Tag приравнивать к унику в БД, но как тогда мне пробежаться по всем созданным дочерним окнам в поиске\сравнения этого уника?
или кто может предложить что-то более разумное?


 
KilkennyCat ©   (2004-10-03 20:48) [1]

Я бы просто создавал окна с именем строки, т.е - строка имеет номер 15 - окно будет TForm15
После клика проверяем, есть ли у нас окно ("TForm + inttostr(row))...


 
Piter ©   (2004-10-03 21:17) [2]

for i:=0 to form1.mdichildCount - 1 do
 if form1.MDIChildren[i] is TForm2 then
   if TForm2(MDIChildren[i]).Tag=XXX then ...


 
Piter ©   (2004-10-03 21:18) [3]

KilkennyCat ©   (03.10.04 20:48) [1]

имхо, неправильный способ. Совсем неправильный. Для этого TAG есть... А не Name


 
jack128 ©   (2004-10-03 21:23) [4]

Piter ©   (03.10.04 21:18) [3]
В данном случае лудше у класса TForm2 нужно объявить свойство и смотреть уже значение этого свойства..
А Tag обычно используют для стандартных компонентов (TButton, TMemo)..


 
jack128 ©   (2004-10-03 21:24) [5]

jack128 ©   (03.10.04 21:23) [4]
лудше у класса TForm2 объявить свойство и


 
Piter ©   (2004-10-03 21:30) [6]

нет, ну прост очеловек хотел пробегать по Tag"у... тут дело его. Я просто показал КАК пробежать...


 
KilkennyCat ©   (2004-10-03 22:53) [7]


> Piter ©   (03.10.04 21:18) [3]


блин, я забыл! вот фигня-то... скоро наверное, вообще мозги спекутся в сторону глобального усложнения примитивных вещей :(


 
001   (2004-10-04 01:40) [8]

>> Piter ©   (03.10.04 21:30) [6]
>> ну прост очеловек хотел пробегать по Tag"у... тут дело его. Я просто показал КАК >> пробежать...

Да, мне именно это и надо было знать: как пробежать по дочерним..

>> jack128 ©   (03.10.04 21:23) [4]
>> В данном случае лудше у класса TForm2 нужно объявить свойство и смотреть уже значение этого свойства..

Так и будет. Поскольку в базе куча связей с другими таблицами, одного Tag не достаточно, необходимо несколько параметров.

Благодарствуем..


 
GanibalLector ©   (2004-10-04 01:56) [9]

Как запасной вариант,напиши на Caption окна какой-нибудь текст(например="Носки Васи Пупкина";) )и проверяй findwindowex.



Страницы: 1 вся ветка

Текущий архив: 2004.10.17;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.041 c
1-1096435775
Vint
2004-09-29 09:29
2004.10.17
нужно перехватить сообщение об открытии окна (наверное)


1-1096608379
Slonco
2004-10-01 09:26
2004.10.17
Как перевести текст из WIN кодировки в DOS кодировку ?


1-1096299900
Руслана
2004-09-27 19:45
2004.10.17
Подскажите пожалуйста как преобразовать массив байт


4-1095226248
Konrads
2004-09-15 09:30
2004.10.17
%SystemRoot%


1-1096466396
GH@ST
2004-09-29 17:59
2004.10.17
Как сделать сортировку в Excel