AGB  ·  Datenschutz  ·  Impressum  







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

Frage zu Tabstop setzen

Ein Thema von Jerry · begonnen am 14. Nov 2005 · letzter Beitrag vom 15. Nov 2005
Antwort Antwort
Jerry

Registriert seit: 24. Feb 2005
Ort: Schweiz/Thurgau
138 Beiträge
 
Delphi 2010 Professional
 
#1

Frage zu Tabstop setzen

  Alt 14. Nov 2005, 20:32
Ich habe folgendes Problem:

in der variable setfield steht 'gb_Allgemein.edit1'. (Der Punkt ist das Trennzeichen)
Wie kann ich jetzt das Feld edit1 mit dem Parent gb_Allgemein auf Tabstop False stellen? Der Parent könnte eben auch ein Frame XY sein.

Ich brauche den Parent, da ich in meinen Formularen mit Frames arbeite, somit ist die Variable eindeutig.

Wenn Frames auf dem Formular sind können gleichnamige controls auf dem Formular sein. Beispiel:
"Frame1.Groubox1.edit1"

Ich hoffe das Problem ist einigermassen schlau geschildert... ???

Mit diesem Code habe ich das versucht:

Delphi-Quellcode:
procedure LoadTabStop(Formular: TForm);
var
  Komponente: TComponent;
  setfield : String;
begin
  setfield:= 'gb_Allgemein.edit1'; // Wird aus DB geladen
  Komponente := Formular.FindComponent(setfield);
  if Komponente <> nil then
  begin
     TWinControl(Komponente).TabStop := False;
  end;
end;
In diesem Beispiel ist Wincontrol immer nil.
Wenn ich in setfield "nur" den Wert "edit1" übergebe funzt es perfekt. Aber wie gesagt, sobald Frames auf dem Formular sind, ist die Variable nicht mehr eindeutig.

Gibt es irgend eine Möglichkeit mit meiner gesetzten Variable zu meinem Ziel zu kommen?

Danke für Euren Input!
  Mit Zitat antworten Zitat
TStringlist

Registriert seit: 1. Dez 2003
360 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Frage zu Tabstop setzen

  Alt 14. Nov 2005, 21:20
Zuerst solltest du mal die beiden Komponenten im String "setfield" trennen, sagen wir in KompoStr1 (='gb_Allgemein') und KompoStr2 (='edit1'). Danach musst du auf dem Formular nach der Parent-Komponente suchen. Und wenn du diese dort gefunden hast, dann suchst du in dieser Parent-Komponente nochmal nach deinem 'edit1'.

Z.B. so:

Delphi-Quellcode:
Komponente1 := Formular.FindComponent(KompoStr1);

Komponente2 := Komponente1.FindComponent(KompoStr2);

if Komponente2 <> nil then
begin
   TWinControl(Komponente2).TabStop := False;
end;
MfG (& Thx ggf.)
  Mit Zitat antworten Zitat
Jerry

Registriert seit: 24. Feb 2005
Ort: Schweiz/Thurgau
138 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Frage zu Tabstop setzen

  Alt 15. Nov 2005, 06:57
Vielen Dank!! Funzt perfekt! So einfach, aber manchmal brauchts eben einen Anstoss!
  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 17:30 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