Текущий архив: 2007.07.29;
Скачать: CL | DM;
Вниз
Странная ошибка при выполнении Найти похожие ветки
← →
Okolobaxa (2007-07-03 00:17) [0]Пишу элементарный код, допустим Form1.Label1.Caption:="anystring"
Компиляция проходит нормально, а при выполнении вылазиет такая ошибка:"Debugger Exception Notification Project Project1.exe raised exception class EAccessWiolation with message "Access violation at address 0044F501 in module "Project1.exe". Read of address 000002FC". Process stopped. Use Step or Run to continue."
Пробовал и переустанавливать Delphi и переустанавливать систему и разные версии пробовал(7,2005,BDS2006). В чём проблема? Посоветуйте...
← →
Германн © (2007-07-03 00:38) [1]
> Пробовал и переустанавливать Delphi и переустанавливать
> систему и разные версии пробовал(7,2005,BDS2006). В чём
> проблема? Посоветуйте...
Смени ещё и сам компьютер.
:)
← →
ЮЮ © (2007-07-03 03:48) [2]> Form1.Label1.Caption:="anystring"
поставь брекпоинт и убедись, что к данному моменту Form1 = nil и, следовательно, Form1.Label1 тождественен "Access violation"
> Пишу элементарный код, допустим Form1.Label1.Caption:="anystring"
Элементарный код, который здесь имеет смысл приводить, должен начинаться с заглоовка метода, в котором он имеет место быть.
← →
Anatoly Podgoretsky © (2007-07-03 08:37) [3]> ЮЮ (03.07.2007 03:48:02) [2]
А смысл, и так ясно, что Form1 не создано или наоборот обнуленою
← →
Okolobaxa (2007-07-03 15:09) [4]Код обыкновенный, стандартный шаблон. Невозможно поменять свойства вообше любых визуальных обьектов, будь то лейбл или чекбокс. при проверке чекбокса на отмеченность вылетает такая же байда. Если это делать в отработчике событий то всё норм.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
begin
form1.Label1.Caption:="anytext";
end.
← →
Инс © (2007-07-03 15:17) [5]
> Код обыкновенный, стандартный шаблон.
И где же ты вычитал, что данный код обыкновенный? Ссылочку, плииз! А проблема в том, что этот код выполняется ДО того как создается экземпляр формы form1.
← →
Однокамушкин (2007-07-03 15:21) [6]form1 создаётся в основной программе - секции begin..end dpr-файла, а ваша секция begin..end выполняется раньше, когда form1 имеет ещё значение nil...
Кстати, не знал, что в unit-ах можно вот так вот писать begin..end, а проверил - можно... Интересно, это где-нибудь документировано? В справке Delphi об этом ничего не нашёл...
← →
Плохиш © (2007-07-03 15:44) [7]
> Okolobaxa (03.07.07 15:09) [4]
Рекомендую всё-таки для начала узнать, что же это такое объектно-ориентированное программирование.
← →
Johnmen © (2007-07-03 16:13) [8]
> Однокамушкин (03.07.07 15:21) [6]
Ищи в справке по Pascal"ю.
← →
clickmaker © (2007-07-03 16:56) [9]
>
> begin
> form1.Label1.Caption:="anytext";
> end.
хм... а в чем смысл сего действа?
Страницы: 1 вся ветка
Текущий архив: 2007.07.29;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.018 c