Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ошибка при изменении свойства формы во время выполнения программы / 19 сообщений из 19, страница 1 из 1
28.03.2018, 17:26
    #39622230
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
Position:=poDesktopCenter;// в OnClick кнопки

нажимаю кнопку и выходит сообщение

project raised exception class estringlisterror with message 'list index out of bounds (0)'. Process stopped. Use Step or Run
to continue.

и красной полосой выходит сюда*

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
begin
  Application.Initialize;
  Application.Title := 'roop';
  Application.HelpFile := '';
  Application.CreateForm(TMainForm, MainForm);
  Application.CreateForm(TColorsForm2, ColorsForm2);
  Application.CreateForm(TColorsForm4, ColorsForm4);
  Application.CreateForm(TColorsForm5, ColorsForm5);
  Application.CreateForm(TColorsForm3, ColorsForm3);
  Application.CreateForm(TColorsForm1, ColorsForm1);
  Application.Run;
end.// сюда*




в чем ошибка? заранее спасибо за ответ..
...
Рейтинг: 0 / 0
28.03.2018, 17:28
    #39622231
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
AndreiT,

Посмотри стек вызовов.
...
Рейтинг: 0 / 0
28.03.2018, 17:29
    #39622232
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
DarkMaster,
как это сделать??
...
Рейтинг: 0 / 0
28.03.2018, 18:05
    #39622253
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
AndreiTPosition:=poDesktopCenter;// в OnClick кнопкиА чего Вы пытаетесь добиться? Я, надеюсь, не спозиционировать форму в центр рабочего стола?
...
Рейтинг: 0 / 0
28.03.2018, 18:09
    #39622255
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
так точно в центре .. _Vasilisk_,
...
Рейтинг: 0 / 0
28.03.2018, 18:23
    #39622265
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
procedure TMainForm.mm800x600Click(Sender: TObject);
begin
Width:=800;
Height:=600;
WindowState:=wsNormal;
Position:=poDesktopCenter;
end;
...
Рейтинг: 0 / 0
28.03.2018, 18:27
    #39622266
schi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
AndreiT
Код: pascal
1.
2.
3.
4.
5.
6.
7.
procedure TMainForm.mm800x600Click(Sender: TObject);
begin
        Width:=800;
        Height:=600;
        WindowState:=wsNormal;
        Position:=poDesktopCenter;
end;



Не воспроизводится.
Возможно, где-то есть обработчики событий OnResize, без кода и без стека за глаза диагностировать сложно.
...
Рейтинг: 0 / 0
28.03.2018, 18:27
    #39622267
Квейд
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
AndreiTDarkMaster,
как это сделать??нанять программиста?
...
Рейтинг: 0 / 0
28.03.2018, 18:38
    #39622273
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
AndreiTDarkMaster,
как это сделать??
Создай ма-а-а-а-аленькое приложение, в котором повторяется описываемое тобой поведение и проявляется описываемый глюк.
И выложи здесь.
А то без твоего кода и говорить не о чем.
...
Рейтинг: 0 / 0
28.03.2018, 19:42
    #39622315
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
редактировал main меню .. удалил меню ошибка остается
onresize формы - ничего там нет
Position:=poDesktopCenter;-ошибка именно когда это действие
параметры формы тоже не менял

файл не могу отправить, так как в новом проекте все работает

или случайно параметры формы поменял.. или меню главное.. что то там
хотя меню удалял ошибка остается
...
Рейтинг: 0 / 0
28.03.2018, 19:45
    #39622317
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
может есть другой способ(Position:=poDesktopCenter; не этот) как центрировать форму по центру экрана

Position:=poDesktopCenter-поставил строку в CreateForm// все работает
...
Рейтинг: 0 / 0
28.03.2018, 19:53
    #39622321
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
Width:=800;
Height:=600;
WindowState:=wsNormal;
Position:=poDefault;-- поменял.. ошибка остается
...
Рейтинг: 0 / 0
28.03.2018, 19:55
    #39622322
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
выдает ошибку когда был запущен ехе файл
...
Рейтинг: 0 / 0
28.03.2018, 20:19
    #39622333
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
AndreiT, если тебе не интересны ответы - зачем ты задаешь вопросы?
Или ты читать не умеешь, только писать?

Пока не сделаешь это: 21294313 - не возвращайся.
...
Рейтинг: 0 / 0
28.03.2018, 20:26
    #39622335
s62
s62
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
AndreiT,

когда изменяешь свойство Position, окно формы пересоздается. Я думаю, что ошибка каким-то образом связана с этим. Изменить положение формы можно с помощью свойств Top и Left.
...
Рейтинг: 0 / 0
28.03.2018, 22:19
    #39622370
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
Position - это свойство формы определяющее положение формы в момент её показа.
Когда форма уже Visible:=true изменение этого свойства бессмысленно и вредно для здоровья
...
Рейтинг: 0 / 0
28.03.2018, 23:10
    #39622376
s62
s62
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
AndreiT
Код: pascal
1.
2.
3.
4.
5.
6.
7.
procedure TMainForm.mm800x600Click(Sender: TObject);
begin
        Width:=800;
        Height:=600;
        WindowState:=wsNormal;
        Position:=poDesktopCenter;
end;




Смотри: Ширина экрана Screen.Width, высота Screen.Height. Есть еще свойства WorkAreaWidth,WorkAreaHeight, почитай посмотри, что тебе лучше подходит.
Если окно посередине экрана, то от средней линии пол-окна - слева, пол-окна - справа. Значит левый край экрана имеет координату Screen.Width div 2 - Width div 2 = (Screen.Width - Width) div 2 (или иногда примерно равно с точностью до 1? чет не соображу). Аналогично с высотой. То есть, чтобы поместить форму в центр, делаем:
Код: pascal
1.
2.
Left := (Screen.Width - Width) div 2;
Top := (Screen.Height - Height) div 2;
...
Рейтинг: 0 / 0
29.03.2018, 05:29
    #39622402
dartveider13
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
А что мешает сразу в дизайнере установить свойство Position у формы и не делать этого в коде?
...
Рейтинг: 0 / 0
29.03.2018, 06:33
    #39622410
AndreiT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка при изменении свойства формы во время выполнения программы
Left := (Screen.Width - Width) div 2;
Top := (Screen.Height - Height) div 2;

сделал так.

Спасибо всем участникам темы!
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ошибка при изменении свойства формы во время выполнения программы / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]