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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.09.2012, 09:52   #1
tsar_
Форумчанин
 
Аватар для tsar_
 
Регистрация: 06.01.2011
Сообщений: 369
Вопрос Ступенчатое изменение размера формы

Здравствуйте.

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

Вся загвоздка в том, что необходимо реализовать ступенчатое изменение размеров формы, т.е. с определенным шагом. Что-то похожее реализовано для меню инструментов в MathCad (панели "калькулятор", "графика" и т.д.). В моей проге форма без рамки (тип границы bsNone), расположена горизонтально, т.е. под изменением размеров понимается "расширение-сужение".

Как реализовать такой эффект?
Программирую по необходимости

Последний раз редактировалось tsar_; 05.09.2012 в 10:06.
tsar_ вне форума Ответить с цитированием
Старый 05.09.2012, 10:28   #2
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
По умолчанию

Код:
procedure TForm1.FormCanResize(Sender: TObject; var NewWidth,
  NewHeight: Integer; var Resize: Boolean);
const step =32;
var
  Form: TForm;
begin
  if Sender is TForm then
  begin
    Form := Sender as TForm;
    NewWidth := ((NewWidth - Form.Width) div step)*step + Form.width;
    NewHeight := ((NewHeight - Form.Height) div step)*step + Form.Height;
  end;
end;
ЗЫ не забудьте на весы нажать ^_^
ЗЗЫ это только реализация на коленке можно было бы на много грамотнее сделать ^__^
Помог? Ну так нажми на весы!

Последний раз редактировалось SNUPY; 05.09.2012 в 10:32.
SNUPY вне форума Ответить с цитированием
Старый 05.09.2012, 10:57   #3
tsar_
Форумчанин
 
Аватар для tsar_
 
Регистрация: 06.01.2011
Сообщений: 369
По умолчанию

Хм, соверщенно забыл о событии OnCanResize...
Вариант вполне сносный, думаю, лучше и не надо.
Цитата:
ЗЫ не забудьте на весы нажать ^_^
Спасибо за помощь, нажал
Цитата:
ЗЗЫ это только реализация на коленке можно было бы на много грамотнее сделать ^__^
А тут из-за сроков вся программа на коленке пишется
Программирую по необходимости
tsar_ вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение размера формы. waterya Общие вопросы Delphi 2 18.06.2010 16:38
изменение размера формы maksim_serg Microsoft Office Excel 0 16.04.2010 04:22
Плавное изменение размера формы TaTT DoGG Общие вопросы .NET 5 31.03.2010 16:53
изменение размера формы (bsNone) Sowa Общие вопросы Delphi 7 07.02.2010 09:11
Как запретить Изменение размера формы girz Общие вопросы Delphi 5 31.05.2009 10:29