Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.04 c
4-1095389264
BorisMor
2004-09-17 06:47
2004.10.17
Окно без бордюра, но ресайзится.


6-1092013221
eRoR_rrr
2004-08-09 05:00
2004.10.17
Состояние Net send


8-1090418922
kingdom
2004-07-21 18:08
2004.10.17
Как можно рисовать быстрее GDI?


1-1096530029
Pushkin
2004-09-30 11:40
2004.10.17
Как из VС передать массив в DLL на Делфи


3-1095829795
Александр Вахнин
2004-09-22 09:09
2004.10.17
Старая проблема с Database Desktop





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский