Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Fenster in Programm öffnen. (https://www.delphipraxis.net/34463-fenster-programm-oeffnen.html)

Goldesel 23. Nov 2004 15:37


Fenster in Programm öffnen.
 
Hallo!

Ich möchte gerne in einem Programm ein eigenes Fenster öffnen. So wie wenn ich in einen fertigen Programm zum Beispiel auf "Optionen" klicke. Dann öffnet sich ja auch ein eigenes Fenster wo man bestimmte Sachen einstellen kann. Soe etwas möchte ich auch machen. Allerdings habe ich keine Ahnung wie das geht. :wiejetzt:

Danke

Jannik

glkgereon 23. Nov 2004 15:41

Re: Fenster in Programm öffnen.
 
Hier im Forum suchenShow

Form2.Show :wink:

einfach Form2 eingeben, F9...dann bindet er bei ok die unit ein...dann ein . und dann show

guck dir event. mal ShowModal an

Goldesel 23. Nov 2004 15:44

Re: Fenster in Programm öffnen.
 
Aber ich möchte zum Beispiel auch, dass wenn dort ein RadioButton angewählt wird, dass sich das dann auf das Programm auswirkt.

Jannik

glkgereon 23. Nov 2004 15:47

Re: Fenster in Programm öffnen.
 
Liste der Anhänge anzeigen (Anzahl: 1)
du hast ja ein 2tes formular gemacht denke ich....und nun kannst du wie normal auch die methode RadioButton1Click anlegen, und dann mit demselben weg wie vorhin auf Form1.xyz zugreifen

im anhang ein mini-beispiel...

ich hoffe es hilft dir

Nils_13 23. Nov 2004 19:08

Re: Fenster in Programm öffnen.
 
Mit Hide versteckst du's wieder probier's am besten mal alles aus.

:hi:

malo 23. Nov 2004 19:33

Re: Fenster in Programm öffnen.
 
Du musst die unit des anderen Forms in die uses-Klausel unterhalb von "implementation" eintragen und dann das andere form mit "unit2" ansprechen.

Etwa so:

Delphi-Quellcode:
uses Unit2;

{$R *.DFM}

procedure TForm1.RadioButton1Click(Sender: TObject);
begin
  Form2.Label1.Caption := 'Ich hab die Caption des Labels auf Form2 geändert, indem ich den Radiobutton auf Form1 aktiviert habe';
end;

procedure TForm1.FormShow(Sender: TObject);
begin
  Form2.Show
end;
[edit] Mein 200. Post :cheers: :coder: :party: :xmas: :witch: :dancer: :dancer2: :dp: :thumb: 8) [/edit]

Goldesel 27. Nov 2004 15:28

Re: Fenster in Programm öffnen.
 
Hallo!

Hab jetzt alles so gemacht wie ihr es gesagt habt. Jetzt bekomme ich aber den Fehler:

Access violation at address 0045BE1E in module 'project.exe'. Read of address 0000002F4

Auch wenn ich es compiliere wird mir dieser Fehler angezeigt.

@ glkgereon

hab ein kleines Problem mit deinem Beispiel:

[Fataler Fehler] Package 'JVCL200_R70' wir benötigt, konnte aber nicht gefunden werden.

Ich habe Delphi 7 Enterprise.

Nicodius 27. Nov 2004 15:30

Re: Fenster in Programm öffnen.
 
das ist aus der Jedi ... such mal hier im Forum ;)

Goldesel 27. Nov 2004 15:40

Re: Fenster in Programm öffnen.
 
Hab mal n bisschen gescuht und bin fündig geworden. Ich downloade jetzt die Datei von der Seite
http://www.delphi-source.de/jedi/jvcl/

Hoffe mal das es die richtige Datei ist.

Goldesel 10. Dez 2004 15:15

Re: Fenster in Programm öffnen.
 
Hallo,

hab jetzt aber immer noch dieses Fehler am Hals:

Access violation at address 0045BE1E in module 'project.exe'. Read of address 0000002F4

was kann ich dagegen tun???

jannik

Wolverine 10. Dez 2004 15:37

Re: Fenster in Programm öffnen.
 
Hi,

wie sieht denn dein QuellCode aus??? Wenn wir den mal haben könnten, wre es sicherlich einfacher etwas zu deinem Problem zu sagen.

Desweiteren: Du hast 2 Formulare. Auf Form2 ist ein RadioButton mit dem du etwas auf Form1 ändern möchtest (ein tolles Bsp. :-D )
Hier der Code von Unit1.pas:
Delphi-Quellcode:
var
  Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Show;
end;
Und hier der aus Unit2.pas:
Delphi-Quellcode:
var
  Form2: TForm2;

implementation

uses Unit1;

{$R *.dfm}

procedure TForm2.RadioButton1Click(Sender: TObject);
begin
Form1.Show;
Form1.Caption:='Caption durch RadioButton geändert';
end;
Wenn du das mal durchspielst, solltest du auch in der LAge sein komplexere Sachen zu erstellen weil alles auf dem gleichen Schema beruht.

Schöne Grüße

edit 1 ---> Wär Rechtschreibfehler findet darf sie behalten :mrgreen:
edit 2 ---> [.code] Tags durch [.delphi] Tags ersetzt

mr47 10. Dez 2004 16:13

Re: Fenster in Programm öffnen.
 
@ Nils: Wenn du mit Hide schließt ist Form2 immer noch offen! Man sieht es nur nicht mehr.Es ist besser (wenn man des nicht mehr braucht) ein Fenster mit

form2.close;

zu schließen! :wink:

malo 10. Dez 2004 18:48

Re: Fenster in Programm öffnen.
 
Zitat:

Zitat von mr47
@ Nils: Wenn du mit Hide schließt ist Form2 immer noch offen! Man sieht es nur nicht mehr.

Hat jemand das Gegenteil behauptet? :gruebel:

mr47 10. Dez 2004 18:53

Re: Fenster in Programm öffnen.
 
Oh sorry !!! Ich hab mich verlesen!

Tschuldigung!

Goldesel 11. Dez 2004 19:41

Re: Fenster in Programm öffnen.
 
@ wolverine

hab jetzt dein beispiel mal komplett abgetippt und es funzt immer noch nicht ich bekomme noch immer den selben fehler. :cry:

Goldesel 26. Dez 2004 18:37

Re: Fenster in Programm öffnen.
 
hab immer noch dasselbe problem mit dem fehler:

Access violation at address 0045BE1E in module 'project.exe'. Read of address 0000002F4

Kann das vielleicht an der Delphi Version liegen. Benutze Delphi 7 Enterprise.
Glaub ich aber eher nicht.

Goldesel 29. Dez 2004 20:14

Re: Fenster in Programm öffnen.
 
Hab Delphi 7 jetzt nochmal neu installiert, aber es funktioniert immer noch nicht. Der selbe Fehler tritt auf. Kann das vielleicht an einem Fehler in der Registry oder sonst irgendwo im System liegen? Ich habe echt keine Ahnung mehr!

Sprint 29. Dez 2004 20:19

Re: Fenster in Programm öffnen.
 
Dann häng' doch mal dein SourceCode an ein Posting dran. So könnte man sich das mal etwas genauer anschauen.

Goldesel 29. Dez 2004 23:58

Re: Fenster in Programm öffnen.
 
Also gut. Hier anhand eines Beispiels:

Code für Unit 1:
Delphi-Quellcode:
unit Unit1;

interface

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

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

var
  Form1: TForm1;

implementation

{$R *.dfm}
uses unit2;

procedure TForm1.Button1Click(Sender: TObject);
begin
form2.Show;
end;

end.

und hier für Unit2:

Delphi-Quellcode:
unit Unit2;

interface

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

type
  TForm2 = class(TForm)
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}
uses unit1;

end.

mr47 30. Dez 2004 01:05

Re: Fenster in Programm öffnen.
 
Ich glaub du hast ein schwerwiegenden Fehler in deinem Betriebssystem! Ich habs rauskopiert und ausgeführt, und es hat auf anhieb funktioniert!!!

evt. mal Formatieren! :roll:

//schwärwiehgändeh Schreipvehlerr peßeidikt! :mrgreen:

roderich 30. Dez 2004 01:59

Re: Fenster in Programm öffnen.
 
das mit dem Fehler im Betriebssystem mit dem Vorschlag des Formatierens ist hoffentlich nicht ernst gemeint....... :roll:

das Problem mit der Zugriffsverletzung liegt daran, daß Form2 nicht erzeugt wurde ->
entweder mit
Delphi-Quellcode:
Form2 := TForm2.Create(Application);
oder in den Projekt-Optionen die Option setzen, daß Form2 automatisch erzeugt wird.


Roderich

mr47 30. Dez 2004 12:21

Re: Fenster in Programm öffnen.
 
Zitat:

Zitat von roderich
das Problem mit der Zugriffsverletzung liegt daran, daß Form2 nicht erzeugt wurde ->
entweder mit
Delphi-Quellcode:
Form2 := TForm2.Create(Application);
oder in den Projekt-Optionen die Option setzen, daß Form2 automatisch erzeugt wird.


Roderich

Aber wenn er Delphi neu Installiert hat, dann ist das doch wohl von anfang an so konfiguriert oder? Ich hab noch nie was anderes gesehen! :?

Goldesel 30. Dez 2004 12:21

Re: Fenster in Programm öffnen.
 
Ich habs jetzt über Projekt Optionen gelöst. Jetzt funktioniert es auch ... endlich.

Danke für Die Antworten!


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz