AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Komponente erstellt --> Name der Komponente ermitteln wie?
Thema durchsuchen
Ansicht
Themen-Optionen

Komponente erstellt --> Name der Komponente ermitteln wie?

Ein Thema von Schuster · begonnen am 16. Jun 2005 · letzter Beitrag vom 17. Jun 2005
Antwort Antwort
Benutzerbild von Schuster
Schuster

Registriert seit: 21. Okt 2004
Ort: Wien
176 Beiträge
 
Delphi XE7 Architect
 
#1

Komponente erstellt --> Name der Komponente ermitteln wie

  Alt 16. Jun 2005, 17:41
Hallo Leute

bin am erstellen div. Komponente für Delphi 2005 PE und MySql.

Habe folgende Componenten: TMaxMySqlCon, TMaxMySqlQuery und TMaxMySqlGrid.

Nun hab ich folgendes Problem:
Damit das Grid befüllt wird möchte ich anhand der Query-Componente feststellen welches Grid mit dem
Query verbunden ist, damit ich nachher bei Abfragen über dieses Query die Daten an das Grid übertragen kann.

Nur wie bekomme ich den Namen des Grid heraus??
Hab mir das in etwa so vorgestellt das es funktionieren könnte:

Delphi-Quellcode:
function TMaxMySqlQuery.FsucheGridKomponente():String;
var x : Integer;
begin
    for x:=0 to Self.Owner.ComponentCount-1 do //Anzahl der Komponenten feststellen
      if Self.Owner.Components[x] is TMaxMySqlGrid then //Prüfen welche v. meinen Grid sind
         if string((Self.Owner.Components[x] as TMaxMySqlGrid).Datasource) = Self.name then //irgenwas falsch
           result:= Self.Owner.Components[x].Name
         else
           result:= 'NULL';
end;
Leider funktioniert es so nicht mir wird immer NULL zurückgeliefert.
Habe es auch schon in Einzelschritten durchgemacht nur bekomm ich aus irgeneinen Grund nicht vom
Grid die Datasource heraus.
Markus Schuster
__________________
Markus
http://members.chello.at/delphi-developer
  Mit Zitat antworten Zitat
100nF

Registriert seit: 7. Nov 2004
639 Beiträge
 
#2

Re: Komponente erstellt --> Name der Komponente ermitteln

  Alt 16. Jun 2005, 18:57
hi,

probiers mal so:
Delphi-Quellcode:
function TMaxMySqlQuery.FsucheGridKomponente():String;
var x : Integer;
begin
  result:= 'NULL';
  for x:=0 to Self.Owner.ComponentCount-1 do //Anzahl der Komponenten feststellen
    if Self.Owner.Components[x] is TMaxMySqlGrid then //Prüfen welche v. meinen Grid sind
       if string((Self.Owner.Components[x] as TMaxMySqlGrid).Datasource) = Self.name then
       begin
         result:= Self.Owner.Components[x].Name ;
         break;
       end;
end;
MFG
urbanbruhin
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#3

Re: Komponente erstellt --> Name der Komponente ermitteln

  Alt 16. Jun 2005, 18:59
Kann ja sein dass ich einen Denkfehler habe, aber das hier
if string((Self.Owner.Components[x] as TMaxMySqlGrid).Datasource) = Self.name then sieht mir nicht ganz sauber aus. Wie waers denn hiermit:
if (Self.Owner.Components[x] as TMaxMySqlGrid).Datasource.name = Self.name then Eine DataSource auf String casten um den Namen zu ermitteln...das kann irgendwie nicht gut gehn

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Schuster
Schuster

Registriert seit: 21. Okt 2004
Ort: Wien
176 Beiträge
 
Delphi XE7 Architect
 
#4

Re: Komponente erstellt --> Name der Komponente ermitteln

  Alt 17. Jun 2005, 10:41
Zitat:
if (Self.Owner.Components[x] as TMaxMySqlGrid).Datasource.name = Self.name then
Danke genau das war es

Das ich da nicht selbst draufgekommen bin
Markus Schuster
__________________
Markus
http://members.chello.at/delphi-developer
  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 05:43 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