Autor Beitrag
greendesire
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Mo 23.03.09 20:12 
ich will einfach nur eine prozedur aus der anderen unit ausführen, allerdings funktioniert das nicht.
ich bekomme immer den Fehler undefinierter bezeichner:NeuesSpiel1Click
wahrscheinlich ein anfängerfehler aber ich hab keine ahnung wie ich das problem lösen soll

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, unit1;

type
  TForm2 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;
  form1: TForm1;
  NeuesSpiel1Click: TForm1;

implementation


{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);
begin
 TForm1.NeuesSpiel1Click;
 close;
end;

end.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 23.03.09 20:36 
Moin!

Schonmal in die Suche geschaut? Suche in: Delphi-Forum, Delphi-Library ZUGRIFF UNIT :les: :think: ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
greendesire Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Mo 23.03.09 20:48 
ja habe ich.
habe dabei auch gefunden, dass ich oben die Unit in uses reinschreiben muss.
mehr leider nicht wirklich.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 23.03.09 20:50 
Moin!

user profile icongreendesire hat folgendes geschrieben Zum zitierten Posting springen:
ja habe ich.
:zustimm:

user profile icongreendesire hat folgendes geschrieben Zum zitierten Posting springen:
habe dabei auch gefunden, dass ich oben die Unit in uses reinschreiben muss.
mehr leider nicht wirklich.
Das ist doch schonmal was. Wie sieht dein Versuch in Codeform aus (beide Units)? :)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
greendesire Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Mo 23.03.09 20:56 
hab das oben eingefügt.
hab keine ahnung, was das problem ist, da ich neuesspiel1click bezeichnet habe und keine ahnung hab wieso der dann undefinierter bezeichner anzeigt

möchte den quelltext nicht kopieren da der viel zu lang ist und außerdem sonst von meinem halben info-kurs kopiert wird.

ich hab in unit1 praktisch eine prozedur neuesspiel1click
die möchte ich in der unit 2 aufrufen.
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Mo 23.03.09 20:58 
Hallo,

das haben wir gleich. Erstens musst du das eingebundene Formular nicht neu definieren (unter var eintragen), das ist ja schon in der unit1 geschehen. Und auch sonst musst du nix definieren - indem du die andere Unit einbindest, hast du Zugriff auf (fast) alle Symbole dieser Unit.

TForm1 ist eine Klasse. Sie selbst enthält nur ein paar Methoden, mehr nicht. Sie bezeichnet kein spezielles Formular. Form1 ist eine Instanz der Klasse TForm1. Sie weist auf das eigentliche Formular und kann es bedienen. Was ist also passender? Willst du auf das Formular selbst oder eine Funktionensammlung derer zugreifen? :think:

Grüße,
Yogu
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 23.03.09 20:59 
Moin!

user profile icongreendesire hat folgendes geschrieben Zum zitierten Posting springen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
procedure TForm2.Button1Click(Sender: TObject);
begin
 TForm1.NeuesSpiel1Click; // lass mal das "T" weg
 close;
end;
Weiterhin gilt natürlich user profile iconYogus Hinweis: nicht nochmal im var-Abschnitt deklarieren. :idea:

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
greendesire Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Mo 23.03.09 21:04 
ja ich habs aus dem var-Abschnitt gelöscht
und das t von TForm hab ich auch weggenommen.
Jetzt zeigt er mir jedoch an nicht genügend wirkliche Paramter und verwendete Unit kann nicht compiliert werden
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 23.03.09 21:10 
Moin!

user profile icongreendesire hat folgendes geschrieben Zum zitierten Posting springen:
Jetzt zeigt er mir jedoch an nicht genügend wirkliche Paramter und verwendete Unit kann nicht compiliert werden
Dann schau dir mal genau die Methodendeklaration von NeuesSpiel1Click an, da steht doch noch was dahinter? (Sender: TObject) nämlich, der "Absender" sozusagen. Du musst also beim Aufruf noch einen Parameter übergeben, das kannst du hier z.B. mit "Self" tun (NIL ginge auch). :idea:

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
greendesire Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 16



BeitragVerfasst: Mo 23.03.09 21:18 
ok danke.
das hat funktioniert.
jetzt hab ich leider dennächsten fehler :(
muss jetzt erstmal gucken, dass ich den behoben bekomme
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Mo 23.03.09 21:38 
user profile icongreendesire hat folgendes geschrieben Zum zitierten Posting springen:
jetzt hab ich leider dennächsten fehler :(

Was hast du denn gedacht, dass du jetzt fertig bist, nur weil du einen Fehler behoben hast? Dann wäre Programmieren doch langweilig :zwinker: