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

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

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.03.2014, 18:39   #1
dim3740
Пользователь
 
Регистрация: 27.11.2009
Сообщений: 38
По умолчанию Нужно ли обновление формы после изменении ее размера?

Это первый вопрос от новичка))) Не пинайте...
Обработчик кнопки на открытой форме:

this.Size = new Size(200, 500);
// this.Update();
// this.Refresh();

не меняется((((
dim3740 вне форума Ответить с цитированием
Старый 17.03.2014, 20:38   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

что не меняется?
eval вне форума Ответить с цитированием
Старый 17.03.2014, 20:46   #3
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Обновление формы не нужно. size отрабатывает нормально и без него. Тем более, что код у Вас правильный.
Цитата:
не меняется((((
Скорее всего, просто исходный размер формы совпадает с конечным.
Streletz вне форума Ответить с цитированием
Старый 17.03.2014, 22:25   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,881
По умолчанию

Есть вероятность, что величины MaximumSize и/или MinimumSize не дают изменить размер так, как Вы хотите.
phomm вне форума Ответить с цитированием
Старый 18.03.2014, 07:08   #5
dim3740
Пользователь
 
Регистрация: 27.11.2009
Сообщений: 38
По умолчанию

Цитата:
Сообщение от phomm Посмотреть сообщение
Есть вероятность, что величины MaximumSize и/или MinimumSize не дают изменить размер так, как Вы хотите.
public partial class Edit : Form
{
InitializeComponent();
this.WindowState = FormWindowState.Maximized; //максимальный размер
int HeightMax = this.Height; // макс высота
}

private void Heiht2_Click(object sender, EventArgs e) // размер по высоте 1/2
this.Height = HeightMax / 2;

спасибо.. мне нужно нечто такое....
dim3740 вне форума Ответить с цитированием
Старый 18.03.2014, 09:27   #6
mr_cipher
Пользователь
 
Регистрация: 05.03.2012
Сообщений: 29
По умолчанию

так то при maximized не будет работать.
Ну а заодно надо проверить MaximumSize и MinimumSize.
mr_cipher вне форума Ответить с цитированием
Старый 18.03.2014, 13:22   #7
dim3740
Пользователь
 
Регистрация: 27.11.2009
Сообщений: 38
По умолчанию

Цитата:
Сообщение от mr_cipher Посмотреть сообщение
так то при maximized не будет работать.
Ну а заодно надо проверить MaximumSize и MinimumSize.
Я стараюсь не лениться, но.... как же мне решить задачу? Ни Maximized, ни
MaximumSize и MinimumSize не позволяют ИЗМЕРИТЬ максимально допустимую высоту окна, запомнить это значение в переменную, а затем перераспахнуть форму в половинной высоте и исходной (максимальной) ширине? Хелп, плз....
dim3740 вне форума Ответить с цитированием
Старый 18.03.2014, 14:10   #8
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Вот вам тонкий намек
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Старый 18.03.2014, 17:06   #9
dim3740
Пользователь
 
Регистрация: 27.11.2009
Сообщений: 38
По умолчанию

Цитата:
Сообщение от Luuzuk Посмотреть сообщение
Посмотрел... почти... но если интерактивно мышкой распахнуть окно в макс, то обработчик опять не работает.... Короче, окошки - дело темное (даже днем): Будем читать матчасть... Но от помощи не откажусь
System.Drawing.Rectangle rect = System.Windows.Forms.Screen.Primary Screen.WorkingArea;
int width = rect.Width;
int height = rect.Height;
this.Size = new Size(width, height); //установили максимальный размер по умолчанию

private void Heiht2_Click(object sender, EventArgs e) // размер по высоте 1/2
{
this.Size = new Size(width, height / 2);
}
dim3740 вне форума Ответить с цитированием
Старый 18.03.2014, 17:35   #10
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Цитата:
но если интерактивно мышкой распахнуть окно в макс, то обработчик опять не работает
Если окно в состоянии "FormWindowState.Maximized", то чхать винда хотела на его явно указанные высоту и ширину, все равно на весь экран растянет.
Добавьте в обработчик следующую строку, чтобы окно из максимизированного состояния вернуть
Код:
WindowState = FormWindowState.Normal;
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение размеров timage при изменении размера формы WebbMan C++ Builder 5 26.02.2013 21:14
Обновление поля формы после создания новой записи создания romanln2012 Microsoft Office Access 2 09.08.2012 14:12
обновление формы после выполнения скрипта Tanzor69 PHP 2 05.02.2012 00:22
при изменении размера формы содержимое окна уплывает в сторону Лицемер Помощь студентам 0 08.03.2011 23:51
при изменении размера формы, все компоненты на ней оставались на своих местах ***СкаЙ*** Помощь студентам 15 13.06.2007 11:13