type
Gazi = class
private
{ private declarations }
public
{ public declarations }
RektorAdi : String;
end;
procedure TForm1.Button1Click(Sender: TObject);
var newElement: Gazi;
begin
newElement.RektorAdi :='Pala';
Label1.Caption := 'Successfully';
Form3.Show;
end;
Вы не создаете экземпляр пространства, необходимого для класса "newElement".Все классы должны быть созданы путем вызова конструктора, который создает (выделяет и инициализирует) переменную для указания на соответствующий класс.
Вам необходимо сделать это:
newElement := Gazi.Create;
newElement.RektorAdi :='Pala';
Теперь, это гарантирует, что вы не получите нарушение доступа при попытке назначить строку для поля-члена RektorAdi, но это не решит проблему в целом.
newElement - это переменная LOCAL, что означаетчто он виден (и доступен) только из метода (PROCEDURE) "TForm1.Button1Click", где он определен.Переменная «access» в TForm3.Button1Click - это совершенно другая переменная (не потому, что она названа по-другому, а потому, что она определена как переменная LOCAL в совершенно другом методе).Кроме того, эта переменная также не была создана, поэтому она также находится в неопределенном состоянии, что, скорее всего, также приведет к нарушению доступа.
Похоже, вам не хватает базового понимания переменных, областей действияи как передавать значения из одного метода в другой, что выходит за рамки стекового потока для предоставления, но здесь, по крайней мере, это начало того, почему вы получаете нарушение доступа.