Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> НЕ закрепляется на месте кнопка, Кнопка меняет позицию на панели  
V
    Опции темы
BEST13
Дата 18.1.2010, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 11.4.2008
Где: Ukraine

Репутация: нет
Всего: нет



Здравствуйте, ув. программисты!
Мне нужно сделать панельку которая сворачиваться и разворачиваться. Я это реализовал так: на  панельке лежит GroupBox и Button, и у панельки свойство Auto Size=True.
user posted image
 И при нажатии  на кнопку свойство GroupBox.Visible  меняется на false. И мая панелька становиться размерам с кнопку(как бы сворачиваться). 
user posted image
А при повторном нажатии, всё возвращается на свои места, но кнопка остаеться слева, не так  как раньше. 
user posted image 
КОД на кнопке
Код

IF sGroupBox_EDits.Visible then sGroupBox_EDits.Visible:=false
                             else sGroupBox_EDits.Visible:=true;

Подскажите правильное решение.
   
PM MAIL ICQ GTalk   Вверх
Frees
Дата 18.1.2010, 20:51 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 16
Всего: 54



код можно гораздо проще написать
Код

 sGroupBox_EDits.Visible:=not sGroupBox_EDits.Visible;

а на скринах ниче не видно потому и не понятна проблема... посмотри у кнопки свойство  anchrs


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Keeper89
Дата 18.1.2010, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 9
Всего: 58



Надо установить свойство Align у компонентов:
  • Для первых 2-ух (GroupBox и Button) - alLeft
  • Для панели с таблицей - alClient



--------------------
PM MAIL WWW   Вверх
BEST13
Дата 18.1.2010, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 11.4.2008
Где: Ukraine

Репутация: нет
Всего: нет



Цитата(Frees @  18.1.2010,  20:51 Найти цитируемый пост)
код можно гораздо проще написатькод Pascal/Delphi1: sGroupBox_EDits.Visible:=not sGroupBox_EDits.Visible;highlightSyntax('delphi_kwYTI2','delphi');а на скринах ниче не видно потому и не понятна проблема... посмотри у кнопки свойство  anchrs


Спасибо за код, так действительно рациональней. С этим свойством игрался результата ноль. 
А на скринах всё видно, если на них нажать. Проблема в кнопке с символами "<<". Разницу в её положение хорошо видно, если сравнить 1 и 3 скрины. 

Цитата(Keeper89 @  18.1.2010,  20:51 Найти цитируемый пост)
адо установить свойство Align у компонентов:Для первых 2-ух (GroupBox и Button) - alLeftДля панели с таблицей - alClient

На панельки с GroupBox и Button  стоит - alLeft, и для таблицы - alClient. 
  
PM MAIL ICQ GTalk   Вверх
Frees
Дата 18.1.2010, 23:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 16
Всего: 54



ОФФ
Цитата(BEST13 @  19.1.2010,  00:07 Найти цитируемый пост)
А на скринах всё видно, если на них нажать

под оперой вместо скринов ссылки на мианитюры в полном размере картинки нет

а если Button алигн alRight сделать?

Это сообщение отредактировал(а) Frees - 18.1.2010, 23:22


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Frees
Дата 18.1.2010, 23:40 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 16
Всего: 54



убери автосайз
у кнопки anchors = [akTop,akRight]

код
Код

 sGroupBox_EDits.Visible := not sGroupBox_EDits.Visible;
  if sGroupBox_EDits.Visible then
    sGroupBox_EDits.Parent.width := sGroupBox_EDits.Parent.width + sGroupBox_EDits.Width
  else
    sGroupBox_EDits.Parent.width := sGroupBox_EDits.Parent.width - sGroupBox_EDits.Width;


вот как то так....


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
BEST13
Дата 18.1.2010, 23:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 11.4.2008
Где: Ukraine

Репутация: нет
Всего: нет



Цитата(Frees @  18.1.2010,  23:40 Найти цитируемый пост)

убери автосайзу кнопки anchors = [akTop,akRight]
Код

sGroupBox_EDits.Visible := not sGroupBox_EDits.Visible;  
if sGroupBox_EDits.Visible then     
                         GroupBox_EDits.Parent.width := sGroupBox_EDits.Parent.width + sGroupBox_EDits.Width  
                        else    
                         sGroupBox_EDits.Parent.width := sGroupBox_EDits.Parent.width - sGroupBox_EDits.Width;

вот как то так....

Спасибо, все +тебе

Добавлено через 2 минуты и 4 секунды
Сорри, нету 100 сообщений.
PM MAIL ICQ GTalk   Вверх
eyelesss
Дата 19.1.2010, 06:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 19.5.2009
Где: Казахстан, Алматы

Репутация: нет
Всего: нет



а не проще ли использовать уже готовые компоненты?
например, из библиотеки jvcl компонент TJvRollOut
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0761 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.