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

Вниз

MDI окна   Найти похожие ветки 

 
kblc ©   (2005-07-15 09:27) [0]

Уважаемые мастера, у меня к вам вопрос:
 все наверное видели совмещение MDI окон и закладок (Opera, FireFox). Я бы хотел то же самое реализовать в своём приложении.
 
 т.е. как только появляеться MDI окно - автоматически создаёться закладка, и как только окно уничтожаеться - закладка уничтожаеться.
 
 Я бы хотел у вас спросить, каким компонентом лучше сделать эти закладки, и второе, какое сообщение приходит форме, если от неё (в ней) создаёться и уничтожаеться MDI-форма. И как потом определить название окошка и его хэндл.

 Заранее боагодарю ответивших...


 
kblc ©   (2005-07-21 13:05) [1]

Удалено модератором


 
alpet ©   (2005-07-21 13:19) [2]

kblc ©   (15.07.05 09:27)
MDI и механизм вкладок не совсем одно и то же. Первое базируется на   окнах не привязанных жестко к какой либо клиентской области (их можно перемешать, изменять размер), второе на окнах как раз привязаннык к клиентской области контрола вкладок (Tab Control). Компоненты для решения этой задачи в Delphi присутствуют, например TTabControl (вкладки которого имеют класс TTabSheet). Начиная кажется с 6-ой версии доступны также и фреймы которые позволяют разрабатывать как-бы отдельные формы, а потом встраивать их как дочерние, например в тот же TTabSheet.


 
kblc ©   (2005-07-21 13:25) [3]

существует ли где-нибудь простенькая реализация, что бы наглядно можно было изучить данную область?
 Если нет, то, не мог бы мне кто-нибудь помочь, а то я не совсем в этом понимаю.

 Заранее благодарю.


 
alpet ©   (2005-07-21 13:42) [4]

kblc ©   (21.07.05 13:25) [3]

Прежде всего хотелось бы узнать постановку задачи. Чего требуется от интерфейса вкладок - тескстовый редактор или что-то иное ?


 
kblc ©   (2005-07-21 13:55) [5]

в этих вкладках будут располагаться окна(самые простые и ещё те окна, размер которых невозможно изменить).


 
alpet ©   (2005-07-21 13:57) [6]

kblc ©   (21.07.05 13:55) [5]

Самые простые окна - в смысле без контролов вообще, или пара кнопок все-таки будет?


 
kblc ©   (2005-07-21 14:02) [7]

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

от TButton до TListView


 
Lexer ©   (2005-07-21 14:06) [8]

> kblc
есть 2 варианта:
1. динамичеси создаешь вкладки вместо окон
2. делаешь внизу/вверху панельку, на которую помещаешь кнопки с названием созданных окон, выглядит как-будто вкладки


 
kblc ©   (2005-07-21 14:09) [9]

я предпочитаю второй вариант.. но! как программа, в данном случаем MDIForm отловит что создалось окно с таким вот названием?


 
alpet ©   (2005-07-21 14:43) [10]

kblc ©   (21.07.05 14:09) [9]
А почему надо именно MDIForm ?


 
ANB ©   (2005-07-21 14:49) [11]

PageControl попробуй. На него можно кидать панели, фреймы и чего хочешь.
Да, а причем тут тогда MDI ?


 
kblc ©   (2005-07-22 07:22) [12]

Все формы не должны выходить за пределы родительского окна, но при этом должен быть удобный их манагер ;)

2alpet, 2ANB:
 Я не говорю что это обязательно, я просто просил про решение такой проблемы и реализации этого решения.

2ANB: Что мне может дать PageControl?


 
alpet ©   (2005-07-22 07:57) [13]

kblc ©   (22.07.05 07:22) [12]
Касательно реализации - тебе жизненно необходимо привыкнуть к чтению справки (на англ. языке), да и экспериментировать не боятся. Контролы TPageControl и TTabControl из себя ничего сложного не представляют, в примерах поставляемых с Delphi наверняка найдеться подобное приложение. В этой же конференции идет речь о WinAPI, а не VCL, да и обучать бесплатно неопытных программеров, не каждому хочеться.


 
kblc ©   (2005-07-22 08:03) [14]

2alpet:
 1) В приреах нет работы с этими контролами - я всё проверил.
 2) Не нужно называть меня неопытным, не терплю оскорблений.

Тогда такой вопрос: какие сообщений приходят родительскому окну когда вдруг создаёться MDIChildForm?


 
alpet ©   (2005-07-22 09:56) [15]

kblc ©   (22.07.05 08:03) [14]
1) Поищи в интернете. В справке впринципе исчерпывающее описание.
2) Ну извини,я незнал что самомнение у тебя так раздулось. Но к сожалению вынужден константировать факт - к неопытным программистам относятся все кто пытается осваивать программирование за чужой счет, и не в состоянии поискать информацию в интернете, или обучаться по книге. Если к тебе это неотносится, думаю на вопрос ты самостоятельно сможешь найти ответ.


 
sniknik ©   (2005-07-22 14:04) [16]

> 1) В приреах нет работы с этими контролами - я всё проверил.
никогда не говори "никогда"... "всё" тоже не говори. всё проверить нереально.
x:\Program Files\Borland\Delphi7\Help\Examples

> 2) Не нужно называть меня неопытным, не терплю оскорблений.
чаще всего это не оскорбление, это правда жизни...


 
kblc ©   (2005-07-25 06:49) [17]

2sniknik: (off-topic)
 Зачем ты дал мне этот путь? я его думаешь не знаю?

2alpet: (off-topic)
 Я считают, что форум создан для того что бы осветить (обсудить/решить) интересующие людей вопросы. Почему возникают эти вопросы - это первое что ты должен был узнать.
 Неужели у тебя не было ситуации, когда время решало всё? Вот у меня именно такаяф ситуация. Простые задачи, но их очень много + придумать это всё и т.д.
 Сейчас я один работаю над проектом, над которым, по моему мнению должны трудиться как минимум 2ое. Мне тяжело и поэтому я обращаюсь к вам как к мастерам, но не нужно меня винить в том, что я это делаю, ведь форум для этого и создан!

 Так сложно дать ответ?


 
alpet ©   (2005-07-25 10:09) [18]

kblc ©   (25.07.05 06:49) [17]
Отнюдь форум существует для разрешения сложных вопросов, ответы на которые обычно не содержатся в справке, а многие его почему-то представляют как набор бесплатных репетиторов. То что у тебя возникла такая ситуация говорит об одном - ты взялся за работу, не только незная матчасти, но и принципиально не желая учиться (дескать вы мне все готовенькое и разжеванное дайте, я быстренько сделаю задание и денежку получу) и изучать справочное руководство. Незнание английского языка в данном случае не оправдание - словарей в том числе онлайновых в сети можно найти предостаточно. А если постораться можно найти и примеры использования TTabControl.

Совет на будушее: Если уж решил с помощью Delphi зарабатывать деньги, вложи в себя для начала - купи хотя бы одну стоящую книгу (например Марко Кэнту).


 
kblc ©   (2005-07-25 10:50) [19]

_______
2alpet: (off-topic)
 Спешу тебя огорчить, именно книга Марко Кэнту у меня есть, "Delphi для профессианалов"; и ещё много какой полезной мне литературы.
 Разве я говорил что не знаю или плохо знаю английский? Разве я говорил что я не желаю учиться? Александр Петров, вы зазнаётесь. Я не собираюсь перед вами оправдываться и что-то вам больше говорить, но у меня складываеться о вас нехорошее мнение как о человеке, который занимаеться на этом форуме просто болтовнёй. Вы считаете себя профессианалом? Я интересуюсь, и по возможности изменю своё мнение о вас (и если придёться принесу свои извенения) если вы мне скажете, в каких проектах вы участвовали, и сможете дать мне на них ссылки дабы посмотреть на них.
_______


 
alpet ©   (2005-07-25 11:26) [20]

kblc ©   (25.07.05 10:50) [19]
[RE:offtop]
Мой пока что единственный открытый проект: http://www.alpet.hotmail.ru

Прощу простить если что, но доскональное выполнение работы за другого человека, ни чуть не способствует повышению профессионализма последнего. Если у тебя есть книга, знание английского, и немного терпения - похоже что ответ дан уже исчерпывающий. Ссылки на известные контролы (причем компоненты, не WinAPI контролы) уже даны - разобраться что как действует дело гораздо меньшего времени, чем выяснять это на форумах. Почему я так категорично утверждаю? Опыт имеется - до всего основного в программировании я доходил сам, и если уж возникал вопрос серьезный, вне моей компетентности - лез на форумы. Со стороны большинства форумчан (не побоюсь утверждать) твой вопрос действительно требует разжевывания азбучных истин, типа: а как работает сей компонент, а какие сообщения должны приходить? Может я еще и не профи, но мне лично было бы стыдно подобные вопросы задавать. У тебя сейчас есть все (книги, справка, примеры с исходниками, интернет в конце-концов), а ведь многим в свое время всего это жутко нехватало.


 
kblc ©   (2005-07-25 12:38) [21]

Александр, да, у меня есть всё, причём желание решить проблему и сделать это как можно качественней. Но единственного чего у меня нет, так это времени на то что бы заниматься этим.
 Есть время - занимаюсь поиском решения проблемы, но что значит поиск 5 минут в полчаса? Ничего. Поэтому я и прошу о помощи, надеюсь на хоть какое-то содействие иначе я бы и не открывал эту ветку.


 
ANB ©   (2005-07-25 13:01) [22]


> kblc ©   (25.07.05 12:38) [21]
так чем PageControl не устраивает то ? Юзать - кинуть на форму и кликнуть по нему правой кнопкой мыши. Дальше сам разберешься. А спорить с мастерами не стоит. Имхо, у alpet все правильно про тебя написано.


 
kblc ©   (2005-07-25 13:20) [23]

2ANB:
 1) Последний вопрос был про сообщение.
 2) Не устраивает
 3) Не понимаешь суть проблемы - не лезь или читай внимательней!



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

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

Наверх




Память: 0.53 MB
Время: 0.025 c
3-1122909888
ArchValentin
2005-08-01 19:24
2005.09.11
Сохранение информации из DBGrid


14-1124178243
Е-клмн
2005-08-16 11:44
2005.09.11
Чай или Кофе?


4-1122015926
Gear
2005-07-22 11:05
2005.09.11
Имя запускаемого файла.


1-1124470769
Пантелеев Иван
2005-08-19 20:59
2005.09.11
Фокус приложения


3-1122897204
Ольга
2005-08-01 15:53
2005.09.11
Формирование запроса к таблице с ненормальной датой