Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.01.2015, 19:31   #1
NIKOLAYY2
Форумчанин
 
Регистрация: 23.12.2014
Сообщений: 220
По умолчанию Создать интерфейс приложению

За пример взял вот эту основу что на картинке.
Кинул компонент TreeView прижал его вправо.
Положил PageControl растянул на всю область.
Панель положил снизу и прижал туда же.
Но дело и не в этом. Как убрать видимость вкладок в PageControl и как обратится от строки TreeView до нужной вкладки PageControl-а?

Вобщем мне нужно сымитировать интерфейс полностью, так как в программе будет очень много настроек, а интерфейс этот мне подошел.
Изображения
Тип файла: jpg 1111.jpg (82.7 Кб, 119 просмотров)
NIKOLAYY2 вне форума Ответить с цитированием
Старый 19.01.2015, 19:42   #2
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,817
По умолчанию

у почти любого визуального компонента есть свойство Width, Height, Left и Top. вот с ними и можно поиграться.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 19.01.2015, 19:47   #3
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Код:
constructor TMainForm.Create(AOwner: TComponent);
var
  Index: Integer;
begin
  inherited;

  // Устанавливаем для всех страниц PageControl
  // свойство TabVisible := False, чтобы не было видно вкладок.
  for Index:= 0 to PageControl.PageCount - 1 do
    PageControl.Pages[Index].TabVisible:= False;

  // Устанавливаем активной 1-ю страницу
  PageControl.ActivePageIndex:= 0;
end;
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 19.01.2015, 21:44   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Цитата:
как обратится от строки TreeView до нужной вкладки PageControl-а?
При создании нодов тривью использовать методы добавления узлов с объектом и в качестве объекта класть TObject(TabIndex), на событии смены нода - ActivePageIndex := Integer(tv1.Selected.Data);
phomm вне форума Ответить с цитированием
Старый 19.01.2015, 22:00   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
как обратится от строки TreeView до нужной вкладки PageControl-а?
для такого случая, было дело, я создавал потомков TTabSheet и TTreeNode, в которых делал свойства для создания взаимных перекрёстных ссылок нужного типа. Очень удобно!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 19.01.2015, 23:07   #6
NIKOLAYY2
Форумчанин
 
Регистрация: 23.12.2014
Сообщений: 220
По умолчанию

Что-то я не совсем как бы понял, мне вобше по простенькому нужно, вот я написал код на кнопку и его уже (для примера что на картинке) открыть первую вкладку хватает:
Код:
PageControl1.ActivePage := TabSheet1;
Теперь я кликаю по срокам TreeView, как мне открывать соответствующую вкладку вот в моем примере что на картинке?
Изображения
Тип файла: jpg 1111.jpg (23.3 Кб, 76 просмотров)
NIKOLAYY2 вне форума Ответить с цитированием
Старый 19.01.2015, 23:12   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

у TTreeNode есть свойство Data. при старте запиши в него указатель на соотв. страницу pagecontrol. Это если по-простому (связь в одну сторону).
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 19.01.2015, 23:29   #8
NIKOLAYY2
Форумчанин
 
Регистрация: 23.12.2014
Сообщений: 220
По умолчанию

min@y™ А у вас кода нету так сделать?
NIKOLAYY2 вне форума Ответить с цитированием
Старый 19.01.2015, 23:40   #9
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
А у вас кода нету так сделать?
по-простому – нет, а писать тебе пример лениво.
есть код, про который я написал в посту #5, но он – часть большого рабочего проекта, поэтому ты просто не осилишь, там очень много лишнего, не имеющего отношения к сабжу.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 20.01.2015, 00:11   #10
NIKOLAYY2
Форумчанин
 
Регистрация: 23.12.2014
Сообщений: 220
По умолчанию

А что бы его и не написать...
Нашел вот он пример простой связи:
Код:
PageControl1.TabIndex:=TreeView1.Selected.Index;
NIKOLAYY2 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кэш к приложению SviteR Java Мобильная разработка (Android) 1 25.02.2014 12:47
разработать интерфейс для дисков - интерфейс програмный Notformal Помощь студентам 0 01.11.2011 22:52
Не могу создать графический интерфейс PastoriXx Общие вопросы по Java, Java SE, Kotlin 2 08.12.2010 15:11
С++ Как создать интерфейс простейшего графического редактора? Снс Помощь студентам 6 05.11.2010 22:06
помогите создать интерфейс smayluk Помощь студентам 3 24.09.2008 23:09