![]() |
control auf anderen form ansprechen
Hi,
ich hoffe der Titel ist nicht zu argh nichts sagend. Also ich habe einen Thread erstellt, der eine Methode besitzt und diese soll einen Text in eine ListBox hinzufügen. Nur kann ich aus dem Thread gar nicht
Delphi-Quellcode:
aufrufen, sondern nur in der Form in der dieses Control auch existiert.
ListBox1.items.add();
Delphi-Quellcode:
funktioniert leider nicht wie in Delphi :roll:
Form1.ListBox1.items.add();
|
AW: control auf anderen form ansprechen
Die VCL ist nicht multithreaded. Auf die Oberfläche sollte deshalb nur aus dem Hauptthread zugegriffen werden.
Btw: Warum weigerst du dich so vehement, Delphi-Tags zu setzen? |
AW: control auf anderen form ansprechen
Wie bereits geschrieben wurde sollte man nicht von Threads aus auf die VCL-Elemente des Hauptthreads zugreifen. Das geht ganz schnell schief.
Aber zu deinem Problem: Die Listbox gehört nicht zum Thread also ist sie natürlich auch nicht im Thread so ansprechbar wie im Formular. Die Listbox gehört zum Formular. Wenn du also die Listbox von außerhalb ansprechen willst musst du vorher auch erwähnen auf welchem Formular sie liegt denn bei Verwendung von mehreren Forms könnte niemand wissen welche Listbox von welchem Formular du meinst. Daher:
Delphi-Quellcode:
DeinFormularWoDieListboxDraufLiegt.DeineListBox.Items.Add();
|
AW: control auf anderen form ansprechen
Zitat:
Code:
Das schrieb ich ja, funktionierte aber nicht.
Form1.ListBox1.items.add();
Oder muss ich das noch in "using" einbinden? Delphi Tags habe ich deswegen nicht benutzt, da es um c# geht und nicht Delphi |
AW: control auf anderen form ansprechen
Ja klar, das richtige Namespace musst du schon einbinden.
Und ganz wichtig: Auf Groß-Und-Kleinschreibung achten. Wie wäre es denn mal, wenn du die Fehlermeldung hier reinschreiben würdest ;) Zitat:
Zitat:
|
AW: control auf anderen form ansprechen
Das hat er vergesse zu erwähnen. Zudem sieht der Code sehr nach Delphi aus.
|
AW: control auf anderen form ansprechen
Zitat:
Also bei mir steht da: Zitat:
|
AW: control auf anderen form ansprechen
Sorry bin halt ein blöder Depp :oops:
|
AW: control auf anderen form ansprechen
Hmm, ich hatte auch auf Grund des Quelltextes auf Delphi getippt (trotz der Angabe von C#) da ich von C++ etc. einen anderen Syntax kenne.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz