Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
 Аватар для Duxan
1 / 1 / 0
Регистрация: 29.05.2013
Сообщений: 54

Размеры и положение элементов на форме

18.09.2013, 15:16. Показов 2423. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени.

Подскажите, как реализовать динамическое изменение положения и размера элементов на форме?
Это встречается, наверное, в каждом приложении, в котором можно изменять размеры окна.

Например, при ширине в 1000 пикселей отображаются все элементы и иконки. При меньшей те, которые не помещаются, уходят в выпадающий список. С остальными элементами так же.

И также, подскажите способ реализовать перетаскивание вкладок (D&D). В том же Нотпаде++ можно вкладки с текстовыми файлами без проблем менять местами. Я реализовал многовкладочность, однако знаний, как сделать динамику не хватает.

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

На скриншотах ниже пример для Notepad++.
Миниатюры
Размеры и положение элементов на форме   Размеры и положение элементов на форме  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.09.2013, 15:16
Ответы с готовыми решениями:

Запомнить положение и размеры всех конролов на форме
Собственно есть базовый класс SettProg, который содержит список состоящий из одинаковых экземпляров класса ContrInfo, который содержит...

Не получается изменить положение элементов на форме
Помогите, пожалуйста, изменить положение элемента на форме..:D Пробовал так: m_textEdit = new QTextEdit(); ...

Смена положение элементов на форме путем нажатия клавишь
Очень простой вопрос, но я не могу вспомнить как это сделать. А именно. В проекте ASP.NET WebApplication можно "натаскивать"...

5
angstrom
18.09.2013, 16:18
Свойство Anchors.
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,610
18.09.2013, 17:25
И/или свойство Align.
1
 Аватар для Duxan
1 / 1 / 0
Регистрация: 29.05.2013
Сообщений: 54
18.09.2013, 17:30  [ТС]
Да, спасибо, уже реализовал.

И есть идеи на счёт перетаскивания вкладок? Для создания вкладок я использую компонент PageControls.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33379 / 21503 / 8236
Регистрация: 22.10.2011
Сообщений: 36,899
Записей в блоге: 12
18.09.2013, 19:38
Duxan, тебе понадобятся 3 обработчика:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
procedure TForm1.PageControl1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
  with Sender as TPageControl do
    Pages[IndexOfTabAt(StartX, StartY)].PageIndex := IndexOfTabAt(X, Y);
end;
 
procedure TForm1.PageControl1DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  Accept := True;
end;
 
procedure TForm1.PageControl1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  StartX := X; StartY := Y; // StartX, StartY : Integer; в классе формы
  (Sender as TPageControl).BeginDrag(False, 0);
end;
2
 Аватар для Duxan
1 / 1 / 0
Регистрация: 29.05.2013
Сообщений: 54
19.09.2013, 09:13  [ТС]
Огромное вам спасибо! Способ отлично работает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.09.2013, 09:13
Помогаю со студенческими работами здесь

Как сделать статическое положение элементов управления на форме?
есть форма с фоном из картинки и на не элементы управления. они расположены на нужный местах картинки поэтому небольшой сдвиг портит...

Закрепить размеры и положение разделенной формы
Добрый день. Столкнулся с проблемой: положение разделенной формы почему-то не фиксируется. Т.е. при ее вызове она выскакивает где попало, а...

Как установить размеры и положение нового окна?
Новое окно создается вот таким кодом: <a href="#" onClick="winObj = window.open ('/my-files/st/st-clic.php', 'myWin','status=no,...

Как получить размеры и положение всего окна?
Не рабочей области, а именно целиком.

Привязать положение кнопки и автоматическое изменение размера TextBox под изменяемые размеры формы
ребят, читал на мсдн, но ничего не понял. как автоматически привязать положение кнопки и автоматическое изменение текстбокса под...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru