AGB  ·  Datenschutz  ·  Impressum  







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

TEdit Cursor fehlt nach SetFocus

Ein Thema von haentschman · begonnen am 12. Jun 2008 · letzter Beitrag vom 13. Jun 2008
Antwort Antwort
Benutzerbild von haentschman
haentschman
Online

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#1

TEdit Cursor fehlt nach SetFocus

  Alt 12. Jun 2008, 22:03
Hallo alle...

ich bin wieder mal verzweifelt 8)

Gegebenheiten:

- Form mit 1 Label und 1 TEdit.
- im OnShow bekommt das TEdit den Focus --> kein blinkender Cursor vorhanden (manchmal ist er kurz zu sehen und dann weg)
- TEdit hat den Focus, da eingegebene Zeichen angezeigt werden
- Nach Mausklick auf TEdit ist Cursor da.

Hinweis: eingebunden ist ein Manifest für Vista um die Anwendung als Administrator laufen zu lassen.
PS: mit TMemo habe ich ähnliche Darstellungsprobleme (Cursor in der falschen Zeile, obwohl Memo leer ist) Link...

Kennt jeman diese Phänomene ?

der Tipp mit der Message aus dem letzten Post (im Prinzip ein after OnShow) des anderen Threads funktioniert leider auch nicht (Ergebnis das gleiche)

Danke...
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: TEdit Cursor fehlt nach SetFocus

  Alt 12. Jun 2008, 22:15
Ich kann den Fehler jetzt nicht reproduzieren, aber evtl. hilft ein einfaches ActiveControl := Edit1
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman
Online

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#3

Re: TEdit Cursor fehlt nach SetFocus

  Alt 12. Jun 2008, 22:25
Danke für die schnelle Reaktion.

Es ist und bleibt eine lustige Raterunde...

ActiveControl := Edit1
gewinnt nicht.

- alles was irgendwie mit Visualisierung zu tun hat habe ich durch.
- selbst den Focus im Kreis laufen lassen und wieder zurück

das einzige was ich herausgefunden habe:

- mit der Message Variante -->
im OnShow nur der Aufruf der MessageProzedur
folgender Code in der MessageProzedur
Delphi-Quellcode:
Abbruch:= True;
  Edit1.Text:= '';
  FMesswerte.Top:= FWartungBearbeiten.Top + (FWartungBearbeiten.Height div 2) - 50;
  FMesswerte.Left:= FWartungBearbeiten.Left + (FWartungBearbeiten.Width div 2) - 160;
  Label1.Caption:= FWartungBearbeiten.ZQueryTat.FieldValues['MESSWERTTEXT'];
  Label2.Caption:= FWartungBearbeiten.ZQueryTat.FieldValues['EINHEIT'];
  Label3.Caption:= ' ' + FWartungBearbeiten.ZQueryTat.FieldValues['DETAIL'] + ' * ' + FWartungBearbeiten.ZQueryTat.FieldValues['BEZEICHNUNG'] + ' ';
  Edit1.SetFocus;
bei Breakpoint auf Zeile 1 ist der Cursor sichtbar, lasse ich weiterlaufen ist er weg.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman
Online

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#4

Re: TEdit Cursor fehlt nach SetFocus

  Alt 12. Jun 2008, 23:11
... ich habe mir jetzt erst einmal mit dem ValidateEdit von den Jedis geholfen.

...das kommt der Bedienung nahe, welche ich möchte und bringt auch gleich noch die Zeichenüberprüfung mit. Praktisch

Unabhängig davon wäre es gut zu wissen woran es liegt.
Wie kann man diesen Zeicheneffekt überlisten. Ideen sind willkommen.

Danke an alle...
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider
Online

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: TEdit Cursor fehlt nach SetFocus

  Alt 13. Jun 2008, 08:45
Hi,

ich nutze dies eigentlich sehr oft mit SetFocus, allerdings meist bei modalen Formularen.
Auch ich kann das Verhalten nicht nschvollziehen.
Ich kenne nur Probleme, wenn das Form ein Parent hat.
Ich würde zum Test im OnCreate des Formulares Application.OnIdle eine Methode zuweisen, in welcher der Fokus dann gesetzt wird.
Natürlich in der Methode OnIdle wieder auf nil setzen, damit es nur einmal ausgeführt wird.
Damit kann man ausschließen, dass irgendein Prozeß, der nach dem OnShow ja noch aus der Warteschlange geholt wird, dieses Verhalten erzeugt.

Cu, Frank
Frank Reim
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: TEdit Cursor fehlt nach SetFocus

  Alt 13. Jun 2008, 08:54
Hast Du auch schön alle Updates und Fixes installiert?
Evtl. auch die inoffiziellen Fixes?
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman
Online

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#7

Re: TEdit Cursor fehlt nach SetFocus

  Alt 13. Jun 2008, 19:54
Danke für Eure Tips...

Zitat:
Hast Du auch schön alle Updates und Fixes installiert?
Evtl. auch die inoffiziellen Fixes?
...meines Wissens ja. Inoffizielle

Zitat:
allerdings meist bei modalen Formularen.
... das besagte Formular ist Modal geöffnet.

Zitat:
Ich würde zum Test im OnCreate des Formulares Application.OnIdle eine Methode zuweisen
...kann ich heute nicht mehr testen, da zeitig ins Bett und morgen 4 Uhr Richtung Günzburg 8)

melde mich dann wieder.

Danke.
  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 10:55 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