AGB  ·  Datenschutz  ·  Impressum  







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

Navigatorbuttons

Ein Thema von Janek76 · begonnen am 21. Apr 2006 · letzter Beitrag vom 22. Apr 2006
Antwort Antwort
Janek76
(Gast)

n/a Beiträge
 
#1

Navigatorbuttons

  Alt 21. Apr 2006, 17:57
Datenbank: Firebird • Version: 1.5 • Zugriff über: Zeos-Komponenten
Hallo,

ich arbeite gerade mit TDBEditfeldern und der Navigatorbuttonleiste (TDBNavigator), und das ist immer etwas tricky. Zur Zeit habe ich folgendes, kleines Problem:

Beim Insertbefehl, also beim Neuanlegen eines Datensatzes, möchte ich bestimmte Felder vorbelegen.

Zum Beispiel bei der Angabe einer Internetadresse soll das DBEditFeld schon mal mit "http://www." gefüllt werden.

Da ich keine Texteigenschaft bei den TDBEditFeldern gefunden habe, sie zeigen ja auf die Datenbank, weise ich dem Feld des neuen Datensatzes, der dann zu der Zeit noch im Puffer steht, über FieldValues diesen String zu.

Problem bei der Sache: Normalerweise ist der Delete-Button im Insertmodus immer deaktiviert. Dadurch wird der nbDelete-Button der Navigatorbutton aber aktiviert, wodurch unvorhersehbare Probleme - wie ich beim Testen feststellen mußte - auftauchen können, da man anscheinend damit den im Puffer stehenden Datensatz nicht löschen kann. So genau weiß ich das auch noch nicht, wie das geht. Bei State dsEdit kann ich Cancel sagen, bei dsInsert nicht. Löschen scheint auch nicht zu gehen. Das scheint glaube ich nur für bereits gespeicherte Datensätze zu gelten.

Nun suche ich nach einer Lösung, wie ich dieses Problem umgehen kann. Am besten durch Deaktivieren des Navigatorbuttons bei der Stringzuweisung, aber ich weiß nicht, wie man den Button anspricht und bei welchem Ereignis ich ihn wieder aktivieren kann, wenn das nicht automatisch geht.

Ich habe versucht, den einzelnen Button über VisibleButton oder FindComponent anzusprechen, aber das war wohl beides falsch. Wie macht man das?

Dazu habe noch einige Fragen zu den Bearbeitungsmodi: dsInsert führt entweder zu Post oder zu welchem Ereignis, wenn der Datensatz verworfen wird?

Also normalerweise kommt immer erst Post, Cancel, oder Delete und dann Before und After Scroll, ist das richtig?
  Mit Zitat antworten Zitat
Janek76
(Gast)

n/a Beiträge
 
#2

Re: Navigatorbuttons

  Alt 22. Apr 2006, 01:54
Ich glaub ich hab mich da etwas verzettelt. Heute ist beim Testen tatsächlich etwas schief gelaufen. Aber ich muß noch mal gucken, woran es genau gelegen hat, wenn ich das noch nachstellen kann. Ich hoffe es ist nur mein Quelltext, der instabil ist, und nicht die Zeoskomponenten .

Wie man einen Navigatorbutton anspricht, habe ich inzwischen im Forum gefunden. Man muß wohl extra eine Klasse TDBNavigator ableiten und den DBNavigator darin umwandeln.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Navigatorbuttons

  Alt 22. Apr 2006, 10:02
Guten Morgen.

Wenn ich deine Problembeschreibung richtig verstehe, dann solltest du das Ereignis OnNewRecord() der Query-Komponente verwenden um deine Felder mit Inhalten vorzubelegen.

Grüße vom marabu
  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:51 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