Problem z showmodal

0

Proszę o pomoc. Znalazłem niedawno program Lazarus. Jest bardzo podobny do delphi jednak pomyślałem, że fajnie byłoby kontynuować mój projekt w nim. Wszystko szło dobrze do czasu gdy nie zadziałało:

Form2.ShowModal;

Program mówi, że form2 jest niezidentyfikowane. Nie wiem dlaczego? Forma jest stworzona, sprawdzałem jej nazwę i jest taka jak napisałem. Pomóżcie.

0

Nie korzystałem nigdy z Lazarusa, ale taka metoda jak ShowModal, wedlug mnie powinna tam działać dla klas dziedziczących po TForm bez problemów. Jesteś pewien, że masz prawidlowo dodany moduł zawierający deklaracje Form2 do sekcji uses modułu, w którym chcesz użyc Form2?

0

Nie do końca rozumiem ale wydaje mi się że wszystko jest dobrze. Jeśli możesz to pokieruj mnie dokładniej co mam zrobić żeby sprawdzić czy wszystko jest ok.

1

Ech. Napisałem najdokładniej jak się da. Nie radzisz sobie z podstawami to polecam poczytać kursy Delphi czy też Komendium Delphi na 4p Musisz sprawdzić czy moduł z Form2 jest w sekcji uses dodanej w sekcji implementation. Pod Delphi 7 wygląda to na przykład tak. Podejrzewam, że Lazarus po dodaniu formatki do projektu i późniejszym odowłaniu się do niej, sam powinien zapytać czy ma dodać moduł z formatką do uses.

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
  TForm1 = class(TForm)
    procedure FormShow(Sender : TObject);
  private
  public
  end;

var
  Form1 : TForm1;

implementation

uses
  Unit2;

{$R *.dfm}

procedure TForm1.FormShow(Sender : TObject);
begin
  Form2.ShowModal;
end;

end.
0

ALBO zmieniłeś nazwę Form2 na coś innego (względnie nie masz Form2)
ALBO nie dodajesz unitów.

Lazarus tutaj nie zachowuje się inaczej niż Delphi, więc nie powinieneś mieć żadnych problemów. A generalnie zaczęcie przygody z programowaniem polecałbym zacząć od FPC, bo wtedy się rozumie co i jak, a nie jak to przy nauce z Delphi/Lazarusem nie rozumie się 99% kodu.

Jakbyś dał kod to może mógłbym coś więcej powiedzieć.

0

Wielkie dzięki Olesio, teraz wszystko jest ok.

1 użytkowników online, w tym zalogowanych: 0, gości: 1