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

Вниз

Wizard-like application   Найти похожие ветки 

 
$HiC0   (2005-06-27 10:44) [0]

Добрый день! Собственно сабж. Встала задача написать приложение, состоящее из нескольких шагов (порядка 10), на каждом из которых пользователь отмечает checkBoxы и radioButtonы и в состоянии нажать на три кнопки Назад, Вперед и Отмена. В общем приложение типа Wizard. Так вот собственно и вопрос. Как лучше это сделать? Для кажжого окна нарисовать свой фрейм и показывать его по мере надобности скрывая все остальные? Подменять форму? Программно удалять с формы все контролы и размещать новые? Может есть какое-то иное решение которое не пришло мне в голову? Может кто сталкивался? Какие будут советы? Заранее спасибо!


 
Плохиш ©   (2005-06-27 11:05) [1]

TPageControl


 
Yuri Btr ©   (2005-06-27 11:05) [2]

Я делал так, размещал на форме PageControl, делал на нем несколько страниц - соответствующим каждому шагу, поднимал его немного вверх (свойство Top ~ -10) для того чтобы не отображались Tabы- закладки страниц. А внизу можно кинуть панель и разместить две кнопки - Далее и Отмена. И при нажатии кнопки далее - перелистываить страницы в PageControl


 
Плохиш ©   (2005-06-27 11:08) [3]


> Yuri Btr ©   (27.06.05 11:05) [2]

TTabSheet.TabVisible + F1


 
бывший   (2005-06-27 11:17) [4]

TNotebook однозначно - проще всего ) правда там пара глюков с самим компонентом в design-time :(


 
$HiC0   (2005-06-27 11:19) [5]

Спасибо! Буду пробовать!


 
Yuri Btr ©   (2005-06-27 11:26) [6]

to Плохиш ©  
???


 
Плохиш ©   (2005-06-27 11:29) [7]


> Yuri Btr ©   (27.06.05 11:26) [6]

Что "???". Загляни в справку и не придётся делать "поднимал его немного вверх (свойство Top ~ -10) для того чтобы не отображались Tabы- закладки страниц"


 
Yuri Btr ©   (2005-06-27 11:31) [8]

to бывший
Цитата из Delphi Help по TNoteBook

"...TNotebook is provided for backward compatibility. New applications should use TPageControl instead."

Однако он действительно удобней в данном случае, даже не смотря на то, что сама IDE Delphi использует компоненты с закладки Win3.1 - например TTabSet


 
Yuri Btr ©   (2005-06-27 11:35) [9]

to Плохиш ©
Я это и без вас прекрасно понял, а вы пробовали делать это сами - табы исчезают, но как вы отобразите активную страницу - её таб всегда будет отображаться вверху - вследствии чего прийдестя его скрывать моим способом !


 
begin...end ©   (2005-06-27 13:04) [10]

> Yuri Btr ©   (27.06.05 11:35) [9]

> как вы отобразите активную страницу - её таб всегда
> будет отображаться вверху - вследствии чего прийдестя
> его скрывать моим способом !

У всех TabSheet"ов PageControl"а устанавливаем TabVisible в False. Нужную в данный момент страницу отображаем, меняя свойство PageControl.ActivePageIndex. При этом страница отображается без всяких "табов", которые нужно было бы скрывать.


 
Yuri Btr ©   (2005-06-27 13:20) [11]

to begin...end ©
Спасибо, не знал...
Но зачем Borland сделала, что в Design Time скрывются все страницы при установке TabVisible=false на всех страницах
Глюк?


 
Плохиш ©   (2005-06-27 13:23) [12]


> Yuri Btr ©   (27.06.05 11:35) [9]

Ну, begin...end понятно объяснил?


 
Плохиш ©   (2005-06-27 13:24) [13]


> Но зачем Borland сделала, что в Design Time скрывются все
> страницы
при установке TabVisible=false на всех страницах

А что должно быть?


 
Yuri Btr ©   (2005-06-27 13:56) [14]

to Плохиш ©  
по идее можно было бы оставить последнюю скрытую страницу на виду


 
MacroDenS ©   (2005-06-27 14:10) [15]

Да, есть такой вопрос, насчет PageControl"a:
А как Ваш Wizard реагирует на комбинации Ctrl+Tab и Ctrl+Shoft+Tab?


 
Плохиш ©   (2005-06-27 15:38) [16]


> Yuri Btr ©   (27.06.05 13:56) [14]

TPageControl.ActivePage.
Может всё-таки сам справку почитаешь?



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

Форум: "Основная";
Текущий архив: 2005.07.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.04 c
1-1119872622
Addast
2005-06-27 15:43
2005.07.18
копия


3-1117655097
alex-drob
2005-06-01 23:44
2005.07.18
WideString actual: Integer - Почему


9-1112352952
VolanD666
2005-04-01 14:55
2005.07.18
Проверка столкновений


4-1116825158
HotSpot
2005-05-23 09:12
2005.07.18
Не удается создать новое сообщение в Outlook Express


14-1118903822
Ломброзо
2005-06-16 10:37
2005.07.18
Подавитесь





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