AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Form aktualisieren

Ein Thema von billi · begonnen am 15. Sep 2003 · letzter Beitrag vom 15. Sep 2003
Antwort Antwort
billi

Registriert seit: 11. Sep 2003
Ort: Darmstadt
127 Beiträge
 
Delphi 5 Standard
 
#1

Form aktualisieren

  Alt 15. Sep 2003, 19:16
Hallo,
ich arbeite mit zwei Forms und dementsprechend ja auch zwei Units. Aus dem ersten öffne ich ein zweites heraus, in dem ich eine ini Datei bearbeite, die bestimmte Variablen in dem ersten "füttert". Hab ich nun also die Daten in der ini Datei geändert, möchte ich, dass wenn ich zum ersten Form zurückkehre automatisch aktualisiert wird, damit die Inhalte der Variablen auch neu (aus der ini Datei raus) bestimmt werden.
Wie mach ich das am besten?
Schon mal vielen Dank,
gruß
billi
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#2

Re: Form aktualisieren

  Alt 15. Sep 2003, 19:31
Hi!
Lies doch einfach beim schließen von Form2 die werte nochmal neu ein (durch erneutes Aufrufen deiner procedure zum einlesen)!

Hoffe das hilft!

ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
billi

Registriert seit: 11. Sep 2003
Ort: Darmstadt
127 Beiträge
 
Delphi 5 Standard
 
#3

Re: Form aktualisieren

  Alt 15. Sep 2003, 19:37
Ich glaube, dass mir damit nicht geholfen ist, da ich ich das ganz form neu laden muss, nicht nur ne Procedure...
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#4

Re: Form aktualisieren

  Alt 15. Sep 2003, 19:49
Hi!

Kannst du mal etwas Code schicken oder so?
Weiß grad nicht so genau, wsa du brauchst, wenns nicht nur um die Variablen geht?
oder einfach mal näher beschreiben!

ciao
Frederic Kerber
  Mit Zitat antworten Zitat
billi

Registriert seit: 11. Sep 2003
Ort: Darmstadt
127 Beiträge
 
Delphi 5 Standard
 
#5

Re: Form aktualisieren

  Alt 15. Sep 2003, 20:02
Das ist die erste Unit:
Delphi-Quellcode:
unit UGalDat;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, FileCtrl, IniFiles, Menus;

const
  SELDIRHELP = 1000;

type
  TFeingabe = class(TForm)
    Lbitteverzpfad: TLabel;
    Bdurchsuchen: TButton;
    Ethema: TEdit;
    Lbittethema: TLabel;
    Lbittetext: TLabel;
    Etext: TEdit;
    Lendung: TLabel;
    Rendung_ja: TRadioButton;
    Rendung_nein: TRadioButton;
    Berzeugen: TButton;
    Lpfad: TLabel;
    Mausgabe: TMemo;
    ListBox1: TListBox;
    Lzeilenzahl: TLabel;
    Luberschriftzz: TLabel;
    MainMenu: TMainMenu;
    Service1: TMenuItem;
    Eoptionen: TMenuItem;
    procedure BdurchsuchenClick(Sender: TObject);
    procedure BerzeugenClick(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure EoptionenClick(Sender: TObject);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;


var
  Feingabe: TFeingabe;

implementation

uses Uoptionen;

var
  ini: TIniFile;
  SearchRec : TSearchRec;
  athema, atext, Dir, Dateiendung, datenbankname: string;


{$R *.DFM}

procedure TFeingabe.BdurchsuchenClick(Sender: TObject);
begin
  if SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt],SELDIRHELP) then
    Lpfad.Caption := Dir;
end;

procedure TFeingabe.BerzeugenClick(Sender: TObject);
var
 index: integer;
 FileExt: string;
begin
begin
  if Rendung_ja.Checked then
  FileExt:= '*.jpg'
  else
  FileExt:= '*.*';
  ListBox1.Clear;
  Dir := IncludeTrailingBackslash(Dir);
  ListBox1.Items.BeginUpdate;
  if FindFirst(Dir + FileExt, faAnyFile, SearchRec) = 0 then
  try
    ListBox1.Items.Add(ChangeFileExt(SearchRec.Name, ''));
    while FindNext(SearchRec) = 0 do
      ListBox1.Items.Add(ChangeFileExt(SearchRec.Name, ''));
  finally
    FindClose(SearchRec);
  end;
  ListBox1.Items.EndUpdate;

  athema := (Ethema.Text);
  atext := (Etext.Text);

  Mausgabe.Clear;
  Lzeilenzahl.caption:=IntToStr(ListBox1.Items.Count);
  for index := 0 to ListBox1.Items.Count -1 do
  Mausgabe.Lines.Add('INSERT INTO `'+datenbankname+'` ( `thema` , `name` , `text` ) VALUES ("'+athema+'", "'+ListBox1.Items.Strings[Index]+'", "'+atext+'");');


end;
end;

procedure TFeingabe.FormActivate(Sender: TObject);
begin
  ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+
    'einstellungen.ini');
  try
    Lpfad.Caption:=ini.ReadString('Parent_Directory','1','');
    Dir:=Lpfad.Caption;
    Dateiendung:=ini.ReadString('Dateiendung','1','');
    datenbankname:=ini.ReadString('Datenbank_name','1','');
  finally
    ini.free;
  end;
Mausgabe.Clear;
Lendung.Caption:= 'Nur '+Dateiendung+' Dateien listen und '+Dateiendung+' entfernen?';
end;

procedure TFeingabe.EoptionenClick(Sender: TObject);
begin
Foptionen.ShowModal;
end;

end.
und das das zweite:
Delphi-Quellcode:
unit Uoptionen;

interface

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

const
  SELDIRHELP = 1000;
 

type
  TFoptionen = class(TForm)
    Label1: TLabel;
    Ename_datenbank: TEdit;
    Label2: TLabel;
    Eparentdirectory: TEdit;
    Bdurchsuchen: TButton;
    Label3: TLabel;
    Edatei_endung: TEdit;
    Bspeichern: TButton;
    Babbruch: TButton;
    procedure BspeichernClick(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure BabbruchClick(Sender: TObject);
    procedure BdurchsuchenClick(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Foptionen: TFoptionen;

implementation

var
  ini: TIniFile;
  Dir: string;
{$R *.DFM}



procedure TFoptionen.BspeichernClick(Sender: TObject);
begin
  ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+
    'einstellungen.ini');
  try
    ini.WriteString('Datenbank_name','1', Ename_datenbank.Text);
    ini.WriteString('Parent_Directory','1', Eparentdirectory.Text);
    ini.WriteString('Dateiendung','1', Edatei_endung.Text);

  finally
    ini.free;
  end;
close;
end;

procedure TFoptionen.FormActivate(Sender: TObject);
begin
  ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+
    'einstellungen.ini');
  try
    Ename_datenbank.text:=ini.ReadString('Datenbank_name','1','');
    Eparentdirectory.text:=ini.ReadString('Parent_Directory','1','');
    Edatei_endung.text:=ini.ReadString('Dateiendung','1','');
  finally
    ini.free;
  end;

end;

procedure TFoptionen.BabbruchClick(Sender: TObject);
begin
Foptionen.close;
end;

procedure TFoptionen.BdurchsuchenClick(Sender: TObject);
begin
Dir := Eparentdirectory.Text;
  if SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt],SELDIRHELP) then
    Eparentdirectory.Text := Dir;

end;

end.
So, ich hoffe, dass mir der lange Code verziehen wird, aber so ist's am verständlichsten...
gruß
Markus
PS: Im Anhang auch noch das Prog...
Angehängte Dateien
Dateityp: exe pgaldat.exe (392,0 KB, 3x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#6

Re: Form aktualisieren

  Alt 15. Sep 2003, 20:11
Hi!
Gut, Code ist soweit klar!
Und was willst du jetzt genau machen, was muss aktualisiert werden, wenn die Optionen geschlossen werden?

ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
billi

Registriert seit: 11. Sep 2003
Ort: Darmstadt
127 Beiträge
 
Delphi 5 Standard
 
#7

Re: Form aktualisieren

  Alt 15. Sep 2003, 20:24
naja, wenn du z.b. den Namen der SQL-Datenbank geändert hast (in Optionen) und dann die Liste erzeugst, hast du immer noch den alten Datenbanknamen. Um das zu ändern muss ich bis jetzt das Programm neu starten. Das ist umständlich und daher suche ich einen anderen weg.
Eben alles zu aktualisieren! (oder eine andere Methode)
gruß
billi
Wenn noch Fragen offen sind versuchs einfach mal unter ICQ ich bin BKBB aus Darmstadt.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:08 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