Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 16.02.2013, 18:07
lostbananan lostbananan вне форума
Начинающий
 
Регистрация: 05.01.2013
Сообщения: 119
Репутация: 10
По умолчанию Изменение высоты GroupBox во время выполнения программы

написал я такой код:
Код:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  if CheckBox1.Checked then
    begin
      GroupBox1.Height := 217;
      GroupBox1.Repaint;
    end
  else
    GroupBox1.Height := 40;
    GroupBox1.Repaint;
MAD: Используйте тег CODE.
Но высота не зависимо от того выбран CheckBox1 или нет - остается 50, а в режиме разработки я высоту для ГрупБокса задал 217!
Почему такой непорядок и как его исправить?

Последний раз редактировалось M.A.D.M.A.N., 16.02.2013 в 18:14.
Ответить с цитированием
  #2  
Старый 16.02.2013, 18:10
lostbananan lostbananan вне форума
Начинающий
 
Регистрация: 05.01.2013
Сообщения: 119
Репутация: 10
По умолчанию

lostbananan:
Цитата:
А в чем нарушение правил???

MAD:
Цитата:
Если постишь код, надо его помечать тегом CODE, там кнопка есть.

http://delphisources.ru/pages/forum_rules.html
пункт 2.8

lostbananan:
Цитата:
холрошу - буду помечать, может бан снимете.?

MAD:
Цитата:
Ладно.
Но смотри.

Последний раз редактировалось M.A.D.M.A.N., 16.02.2013 в 18:19.
Ответить с цитированием
  #3  
Старый 16.02.2013, 18:19
lostbananan lostbananan вне форума
Начинающий
 
Регистрация: 05.01.2013
Сообщения: 119
Репутация: 10
По умолчанию

Спасибо!
А по моему вопросу ничего не подскажите?
Ответить с цитированием
  #4  
Старый 16.02.2013, 18:22
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Констрэйнты (constraints) или Алайны (align) не применены к гроупбоксу?
Ибо у меня работает
Код:
  if chk1.Checked then
    grp1.Height := 100
  else
    grp1.Height := 200;

object grp1: TGroupBox
  Left = 24
  Top = 80
  Width = 185
  Height = 105
  Caption = 'grp1'
  TabOrder = 0
end
object chk1: TCheckBox
  Left = 24
  Top = 48
  Width = 97
  Height = 17
  Caption = 'chk1'
  TabOrder = 1
  OnClick = chk1Click
end
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #5  
Старый 16.02.2013, 18:24
lostbananan lostbananan вне форума
Начинающий
 
Регистрация: 05.01.2013
Сообщения: 119
Репутация: 10
По умолчанию

У меня не работает однрознрачано, а я не понял что значит колстремы и т.д...

Алайн - насколько я понимаю - выравнивание, а что такое Констрэйнты (constraints?

Последний раз редактировалось M.A.D.M.A.N., 16.02.2013 в 18:30.
Ответить с цитированием
  #6  
Старый 16.02.2013, 18:30
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Констрэйнт - ограничение.
Мин/макс высота/ширина.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #7  
Старый 16.02.2013, 18:32
lostbananan lostbananan вне форума
Начинающий
 
Регистрация: 05.01.2013
Сообщения: 119
Репутация: 10
По умолчанию

И чего ?
Говорю же НЕ работает!

Модернизировал процедуру, код такой:
Код:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  if CheckBox1.Checked then
    begin
      Form1.Caption := 'Àãðåñ³ÿ âõîäèòü äî ³ñïèòó';
      GroupBox1.Height := 217;
      GroupBox1.Repaint;
      Form1.Caption := IntTostr(GroupBox1.Height);
    end
  else
    Form1.Caption := 'Íå âõîäèòü äî ³ñïèòó àãðåñ³ÿ';
    GroupBox1.Height := 40;
    GroupBox1.Repaint;
    Form1.Caption := IntTostr(GroupBox1.Height);
Так Form1.Caption всгеда остается 40!

Последний раз редактировалось M.A.D.M.A.N., 16.02.2013 в 18:47.
Ответить с цитированием
  #8  
Старый 16.02.2013, 18:48
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Не верю.
Выложи проект.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #9  
Старый 16.02.2013, 18:49
lostbananan lostbananan вне форума
Начинающий
 
Регистрация: 05.01.2013
Сообщения: 119
Репутация: 10
По умолчанию

Модернизировал процедуру, код такой:
Код:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  if CheckBox1.Checked then
    begin
      Form1.Caption := 'Àãðåñ³ÿ âõîäèòü äî ³ñïèòó';
      GroupBox1.Height := 217;
      GroupBox1.Repaint;
      Form1.Caption := IntTostr(GroupBox1.Height);
    end
  else
    Form1.Caption := 'Íå âõîäèòü äî ³ñïèòó àãðåñ³ÿ';
    GroupBox1.Height := 40;
    GroupBox1.Repaint;
    Form1.Caption := IntTostr(GroupBox1.Height);
Так Form1.Caption всгеда остается 40!

Пробывал весь код выложить дак:
Вы ввели слишком длинный текст (21722 символов). Пожалуйста, сократите его до 10000 символов
Лан даю код по ЧекБоксу:

Код:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  if CheckBox1.Checked then
    begin
      Form1.Caption := 'Àãðåñ³ÿ âõîäèòü äî ³ñïèòó';
      GroupBox1.Height := 217;
      GroupBox1.Repaint;
      Form1.Caption := IntTostr(GroupBox1.Height);
    end
  else
    Form1.Caption := 'Íå âõîäèòü äî ³ñïèòó àãðåñ³ÿ';
    GroupBox1.Height := 40;
    GroupBox1.Repaint;
    Form1.Caption := IntTostr(GroupBox1.Height);
 // òóò òðåáà áóäå ïîãðàòèñÿ ç âèñîòîþ ôîðìè!}
end;

Последний раз редактировалось M.A.D.M.A.N., 16.02.2013 в 19:02.
Ответить с цитированием
  #10  
Старый 16.02.2013, 19:02
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

В аттач положи или залей на файлообменник.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #11  
Старый 16.02.2013, 19:10
lostbananan lostbananan вне форума
Начинающий
 
Регистрация: 05.01.2013
Сообщения: 119
Репутация: 10
По умолчанию

Кидаю весь код...
Что-то не открывается по кнопке атач
сейчас сбьрошу на йфайлообменник
ЭНЭЕа - я таки его смого приатачить....
Вложения
Тип файла: rar 1.rar (229.0 Кбайт, 2 просмотров)
Ответить с цитированием
  #12  
Старый 16.02.2013, 19:18
Аватар для Yurk@
Yurk@ Yurk@ вне форума
Специалист
 
Регистрация: 07.09.2007
Адрес: Украина, г. Днепропетровск
Сообщения: 892
Версия Delphi: 7 + ОгнеПтица
Репутация: выкл
По умолчанию

Цитата:
Сообщение от lostbananan
Модернизировал процедуру, код такой:
Код:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  if CheckBox1.Checked then
    begin
      Form1.Caption := 'Агресія входить до іспиту';
      GroupBox1.Height := 217;
      GroupBox1.Repaint;
      Form1.Caption := IntTostr(GroupBox1.Height);
    end
  else
    Form1.Caption := 'Не входить до іспиту агресія';
    GroupBox1.Height := 40;
    GroupBox1.Repaint;
    Form1.Caption := IntTostr(GroupBox1.Height);
Так Form1.Caption всгеда остается 40!
а чё ему меняться то, если у тебя после else нету begin ... end; ???
сответственно код
Код:
    GroupBox1.Height := 40;
    GroupBox1.Repaint;
    Form1.Caption := IntTostr(GroupBox1.Height);
выполняется вне зависимости от
Код:
if CheckBox1.Checked

попробуй так:
Код:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  if CheckBox1.Checked then
  begin
    Form1.Caption := 'Агресія входить до іспиту';
    GroupBox1.Height := 217;
  end
  else
  begin
    Form1.Caption := 'Не входить до іспиту агресія';
    GroupBox1.Height := 40;
  end;
  GroupBox1.Repaint;
  Form1.Caption := IntTostr(GroupBox1.Height);
__________________
Поживу - увижу, Доживу - узнаю, Выживу - учту.
[P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз

Последний раз редактировалось Yurk@, 16.02.2013 в 19:21.
Ответить с цитированием
Этот пользователь сказал Спасибо Yurk@ за это полезное сообщение:
lostbananan (16.02.2013)
  #13  
Старый 16.02.2013, 19:34
lostbananan lostbananan вне форума
Начинающий
 
Регистрация: 05.01.2013
Сообщения: 119
Репутация: 10
По умолчанию

Большое спасибо! Здесь сработала моя невнимательность!
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 01:53.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter