AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Kopieren und einfügen von Objekten auf der Form
Thema durchsuchen
Ansicht
Themen-Optionen

Kopieren und einfügen von Objekten auf der Form

Ein Thema von TRBB · begonnen am 31. Okt 2007 · letzter Beitrag vom 3. Nov 2007
Antwort Antwort
TRBB

Registriert seit: 31. Okt 2007
18 Beiträge
 
Delphi 7 Professional
 
#1

Kopieren und einfügen von Objekten auf der Form

  Alt 31. Okt 2007, 22:21
Schönen guten Abend,

ich bin neu in der "Delphi-Ecke" und habe nun mein erstes 'größeres' Projekt gestartet (eine DVD-Datenbank).

Da der Code nun etwas lang wurde, hab ich mir Frames erstellt.
Die bereits erstellten Objekte (Editfelder, Buttons, GroupBoxes) habe ich einfach ausgeschnitten und in die neuen Forms der Frames eingefügt.
Diese kann ich zwar ansprechen (zumindest scheint es so weil sie keine Fehler produzieren) aber irgendwie reagieren sie auf keine Zuweisungen.

Beispiel:
Ich spreche das kopiert und eingefügte Objekt edit1 an
edit1.text := 'ein neuer text';
Es passiert aber nichts!


Wie kann ich die kopierten Objekte benutzen?!?
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#2

Re: Kopieren und einfügen von Objekten auf der Form

  Alt 2. Nov 2007, 10:53
Zitat von TRBB:
Da der Code nun etwas lang wurde, hab ich mir Frames erstellt.
[...]
Diese kann ich zwar ansprechen (zumindest scheint es so weil sie keine Fehler produzieren) aber irgendwie reagieren sie auf keine Zuweisungen.
[...]
Wie kann ich die kopierten Objekte benutzen?!?
Hi,
die Frage die sich hier stellt ist, wo der Code (die Zuweisung) jetzt eigentlich eingefügt wurde. Rufst Du den in der Unit des jeweiligen Frames auf? Und das Projekt lässt sich erfolgreich übersetzen?
An sich musst Du darauf achten, dass Bezeichner immer innerhalb eines gewissen Scope eindeutig sein müssen. Der Scope variiert dabei immer mit der Art von Bezeichner, eine Instanzvariable muss nur innerhalb der Klasse eindeutig benannt sein, eine globale Variable kann natürlich nur einmal pro Unit existieren, etc. Bei Controls sorgt Delphi aut. dafür, dass wenn die kopiert werden der Bezeichner diesem Anspruch angepasst wird. Kopierst Du also ein Edit1, so solltest Du nach dem einfügen nochmal schauen, ob der Name auch bei der Kopie noch Edit1 ist oder geändert wurde. Dieser Bezeichner ist zudem nur innerhalb der Unit des Frames eindeutig.
Jetzt kannst Du in einem Formular beliebig viele Frames platzieren, die entsprechend alle ein Edit1 hätten. Weißt Du jetzt innerhalb der Unit des Formulars dem Edit1 eine Eigenschaft zu, dann würde Delphi denken, dass Du das Edit1 der Unit des Formulars meinst. Um hier auf Elemente eines Frames zuzugreifen, musst Du den Namen des entsprechenden Frames (die konkrete Instanz) voranstellen, also z.B.
  myFrame1.Edit1.Text := '...'; Gruß Der Unwissende
  Mit Zitat antworten Zitat
TRBB

Registriert seit: 31. Okt 2007
18 Beiträge
 
Delphi 7 Professional
 
#3

Re: Kopieren und einfügen von Objekten auf der Form

  Alt 3. Nov 2007, 12:08
Vielen Dank schon mal für deine Antwort.

Ich greife richtig auf die Objekte zu und es gibt auch keine Fehlermeldungen.
Wenn ich das Objekt lösche und neu (mit der Toolleiste oben neues Objekt auf Form positionieren) funktionert es.

Ich habe z.B. eine Textfeld
Diesem will ich einen neuen Inhalt hinzufügen
edit1.text := 'hallo';

Das funktioniert aber nicht das Textfeld bleibt beim alten Inhalt...einen Fehler gibt es aber nicht.
  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 18:41 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