Autor Beitrag
Locke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 47

Win 2000
Delphi 7 PE
BeitragVerfasst: Sa 07.01.06 00:49 
Hallo Leute,
ich Programmiere gerade etwas und haenge an einer Stelle fest.
Unzwar habe ich ein Form1 und ein Form2.
Wenn man nun im Form1 auf einen Button drueckt, erscheint das Form2 mit einem Edit Feld und einen OK Button, das was im Edit feld eingegeben wurde, soll nach dem druecken von OK in Form1 uebertragen werden. Das funktioniert ja auch schon!

Nun habe ich aber ~7 verschiedene Buttons, es soll aber bei jedem Button ein anderer Text eingefuegt werden. Ich koennte nur auch fuer jeden Button ein Form erstellen, das waere aber sicherlich zu umstaendlich.

Es wuerde mich freuen, wenn mir jemand sagen koennte wie man das auch leichter machen kann.

Danke schonmal.

mfg Locke
Kroko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1284

W98 W2k WXP
Turbo D
BeitragVerfasst: Sa 07.01.06 10:09 
weise jedem Button im OI einen eindeutigen Tag zu, gib allen Buttons dieselbe OnClick-Procedure und werte dort Tag aus

alternativ

FindComponent + F1

_________________
Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!
Locke Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 47

Win 2000
Delphi 7 PE
BeitragVerfasst: Sa 07.01.06 14:55 
Wie werte ich denn die Tags aus?

thx schonmal ;)

mfg Locke
stifflersmom
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 194

XP /XP PRO/ SuSE div.
D1 - D7, BDS 2006
BeitragVerfasst: Sa 07.01.06 15:13 
Versuchs mal so (ungetestet):
ausblenden Delphi-Quelltext
1:
If (Sender as TButton).Tag = 1 Then Form2.Edit1.Text := 'Nr. 1';					


Dies (natürlich in erweiterter Form für die sieben Button (Tags),
allen Buttons zuweisen und ab dafür.
elundril
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3747
Erhaltene Danke: 123

Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
BeitragVerfasst: Sa 07.01.06 15:17 
oder du kannst bei jedem button ins click ereigniss hineinschreiben:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
 begin
    Form2.show;
    Form2.edit1.text:='ich bin der textden du bei diesem button willst'
  end;


Moderiert von user profile iconChristian S.: Delphi-Tags hinzugefügt
Locke Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 47

Win 2000
Delphi 7 PE
BeitragVerfasst: Sa 07.01.06 15:45 
Ok ich glaube wir reden aneinander vorbei :D

Ich hab mal nen paar Bilder gemacht.
Im Form1 habe ich 3 Buttons. (B, I und U)
user defined image

Druecke ich nun auf "B" erscheint das Form2.
user defined image

Dort gebe ich nun einen Text ein und bei den Klick auf OK passiert folgendes:
ausblenden Quelltext
1:
Form1.RichEdit1.SelText := '[b]' + Edit1.Text + '[/b]';					


user defined image

Nun moechte ich aber nicht fuer jeden Button ein extra Form machen :D
Also wenn ich jetzt auf "I" druecke, soll anstatt [b] & [/b] ein [i] & [/i] stehen, usw.

mfg Locke
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Sa 07.01.06 16:00 
Könntest Du z.B. so machen:

Als Fenster, das aufgehen soll, habe ich eine Form2 angelegt. Sieht so aus:
ausblenden 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:
type
  TForm2 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
  private
    { Private-Deklarationen }
  public
    function GetStringModal: String;

    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

function TForm2.GetStringModal : String;
begin
  self.ShowModal;
  result := edit1.text;
end;

Drauf sind ein Button (zum Abschicken des eingegebenen Textes) und ein Editfeld, in welches der Text eingegeben wird.

Dann habe ich das Formular, welches das andere aufruft. Das geht so:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
procedure TForm1.Button1Click(Sender: TObject);
var
  form2 : TForm2;
begin
  form2 := TForm2.Create(Self);
  try
    ShowMessage(form2.GetStringModal);
  finally
    Form2.Free;
  end;
end;


Damit liefert das aufgehende Fenster einfach nur den Text zurück und die Tags kannste dann halt drum herum setzen.

Grüße
christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
stifflersmom
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 194

XP /XP PRO/ SuSE div.
D1 - D7, BDS 2006
BeitragVerfasst: Sa 07.01.06 16:04 
user profile iconLocke hat folgendes geschrieben:
Ok ich glaube wir reden aneinander vorbei :D

mfg Locke


Nein, tun wir nicht,
Du solltest mal versuchen nachzuvollziehen was wir Dir gesagt haben.

Mit den verschiedenen Tags und der selben OnKlickProcedure für alle betreffenden
Buttons, kannst Du ohne Probleme immer wieder dieselbe form
aufrufen und unterschiedlich verfahren.

Moin