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

Вниз

Мне нужно поместить на панель (TPanel) таблицу (DBGrid), но чтобы   Найти похожие ветки 

 
Michael5   (2005-08-16 09:31) [0]

получившийся компонент был потомком DBGrid!
Для меня тут проблема в том, что мне приходится делать его потомком TPanel, иначе, если родитель - DBGrid, то панель выйдет за границы таблицы и станет не видна...

Можно ли визуальные компоненты размещать за границами родительского компонента, или тут можно решить проблему при создании (Create) этих компонентов? Или еще как-то...
Подскажите пожалуйста!


 
DimaBr   (2005-08-16 14:42) [1]

//Можно ли визуальные компоненты размещать за границами
А почему нельзя ?
А вообще проблема неясна. После пятикратного прочтения сообщения, я так ничего не понял


 
Юрий Зотов ©   (2005-08-16 15:00) [2]

> Michael5   (16.08.05 09:31)

> Мне нужно поместить на панель (TPanel) таблицу (DBGrid), но
> чтобы [D7, WinXP] получившийся компонент был потомком DBGrid!

Зачем? Почему Ваш компонент обязательно должен быть на панели? А если пользователь захочет, например, положить его на форму, фрейм, GroupBox или еще куда-то? Разве это не нормально?

Грамотно сделанный визуальный компонент обязан уметь жить на любом родителе. И про своего родителя он знает только то, что это TWinControl и что на него указывает Parent. Все. Больше ему ничего про родителя не известно, да и не должно быть известно.

Поэтому совет такой - раз нужен потомок TDBGrid, так и делайте потомка TDBGrid, а про панель забудьте. Есть Parent - и все.


 
Michael5   (2005-08-16 16:20) [3]

В общем, проблема возникла потому, что я пытался создать компонент, и на нем - другой компонент (напр., таблица и на ней кнопка, или панель и на ней таблица и т.д....). При этом при задании координат второго компонента (допустим, я хочу, чтобы кнопка была над таблицей, и задаю соотв. координаты кнопки Top и Left отрицательными, правильно? У меня ведь родитель при этом - таблица, и ее верхний левый угол - нулевой) кнопка улезает за пределы таблицы и становится не видна...

Я же не претендую на знание, подскажите, где я заблуждаюсь :)

//а зачем мне это надо? Просто мне нужна панель с таблицей, на которой будут управляющие таблицей кнопки, т.д., и соответственно, зачем мне компонент - потомок панели, если она просто - несущий элемент... Мне нужен потомок DBGrid...//


 
Наиль ©   (2005-08-16 16:40) [4]

Зона видимости всегда ограничивается родительским окном.
В твоём случае, гораздо проще создать компонент от TPanel, и придать ему необходимую функциональность. Можно конечно, создать потомка от DBGrid, и при изменении Parent"а, скажем, на Form1, подсовывать под него панель с кнопочками. В этом случае верёвку с мылом, лучше далеко не убирать.


 
Reindeer Moss Eater ©   (2005-08-16 16:50) [5]

//а зачем мне это надо? Просто мне нужна панель с таблицей, на которой будут управляющие таблицей кнопки, т.д., и соответственно, зачем мне компонент - потомок панели, если она просто - несущий элемент... Мне нужен потомок DBGrid...//

У нормальных и логичных людей то, что тебе надо, называется фреймом.


 
Юрий Зотов ©   (2005-08-16 18:13) [6]

> Michael5   (16.08.05 16:20) [3]

Нужно делать именно потомка от TPanel, а грид прописывать, как его свойство. Но есть способ намного проще и намного быстрее.

Сделайте фрейм (как обычную форму), потом зарегистрируйте его в качестве компонента (правым кликом мышки). И весь вопрос.


 
Michael5   (2005-08-17 09:10) [7]

Благодарю всех!
Буду разбираться с фреймами, никогда ими не пользовался



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

Форум: "Компоненты";
Текущий архив: 2006.02.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.014 c
1-1136803830
BiggieSmalls
2006-01-09 13:50
2006.02.05
Длинна строки реестра


4-1133090172
_mmm
2005-11-27 14:16
2006.02.05
Нажата ли сейчас левая кнопка мыши?


1-1135873231
френк
2005-12-29 19:20
2006.02.05
Сортировка TListView по колонкам


3-1133785755
Kerk
2005-12-05 15:29
2006.02.05
Excel. Чувствую, что торможу


1-1136319103
Yozch1
2006-01-03 23:11
2006.02.05
Application data





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский