Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi TFindDialog akzeptiert den Buchstaben "h" nicht! (https://www.delphipraxis.net/48920-tfinddialog-akzeptiert-den-buchstaben-h-nicht.html)

NSI 2. Jul 2005 16:22


TFindDialog akzeptiert den Buchstaben "h" nicht!
 
Ich mag es ja selbst nicht glauben, aber seit zwei Tagen suche ich einen der abgedrehtesten Fehler, die ich je in einem Programm hatte:

Ich verwende den Standard-FindDialog (TFindDialog) aus Delphi Pro 2005. In der IDE ist alles prima, da lässt er sich vorzüglich bedienen. In der compilierten Anwendung ist soweit auch alles o.k., wenn man mal davon absieht, dass ich den Buchstaben "h" nicht eingeben kann. Und zwar wirklich das "kleine h", der Großbuchstabe macht keine Probleme.

Ich habe keinen Shortcut gesetzt (zumindest nicht bewußt, außerdem habe ich das schon - denke ich - hinreichend durch "absuchen" ausgeschlossen). Ich schraube am Dialog auch nicht rum, ich will wirklich einfach nur suchen. Was soweit ja auch klappt, solange man kein "h" braucht, wobei ein "ALT-0104" dann doch funktioniert.

Wenn es mich nicht bis auf´s Blut nerven würde, könnte ich ja drüber lachen. Hat jemand eine Idee, dass ich das vielleicht wirklich bald kann?

NSi

Dieses Schreiben ist mit der selben Tastatur verfasst, mit der ich entwickle. Außerdem tritt der Effekt auch auf einem anderen Rechner auf. Darauf möchte ich dann doch noch _h_inweisen... .[i]

NSI 9. Jul 2005 09:26

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Ich muss mich korrigieren: Das ganze Programm nimmt kein "h" an. Ich habe jetzt schon alles abgesucht, finde aber nichts (kann mich auch nicht erinnern, derartiges programmiert zu haben...).

Das "h" wird bereits vom Hauptformular (onKeyDown) nicht mehr empfangen! Wo um alles in der Welt kann man das einstellen???

---
NSI

alcaeus 9. Jul 2005 10:22

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Moin NSI,

bist du sicher dass das Problem nicht an der Hardware liegt (defekte Taste)? Evtl. kann es auch sein, dass irgendwie ein Hotkey registriert wurde, anderes kann ich mir im Moment auch nicht vorstellen :gruebel:

Greetz
alcaeus

NSI 9. Jul 2005 10:34

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Zitat:

Zitat von alcaeus
Moin NSI,

bist du sicher dass das Problem nicht an der Hardware liegt (defekte Taste)? Evtl. kann es auch sein, dass irgendwie ein Hotkey registriert wurde, anderes kann ich mir im Moment auch nicht vorstellen :gruebel:

Greetz
alcaeus

Also das mit der Taste kann ich ausschließen - leider, denn das wäre ja ne Lösung :evil:

Hotkey: Klar, irgendsowas muss es sein, denn wenn ich testweise andere Projekte kompiliere, hab ich das Problem nicht.

Allerdings hab ich jetzt (glaub ich) alles durch. Oder gibt es noch irgendwo eine Möglichkeit in der IDE zeig mir mal alle Hotkeys zu fragen? Ich schmeiß auch gern eine Suche durch alle Quellen an, wenn ich nur wüßte, wonach ich suchen muss! Die "onKeys" hab ich alle durch... .

---
NSI

Dani 9. Jul 2005 11:11

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Hi!

Hast du vielleicht aus Versehen einem MainMenu Eintrag den ShortCut "H" statt "STRG+H" zugewiesen?
Falls was im Sourcecode steht dann wahrscheinlich "Ord('H')", "#72" oder "#104".

NSI 9. Jul 2005 11:23

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Zitat:

Zitat von Dani
Hi!

Hast du vielleicht aus Versehen einem MainMenu Eintrag den ShortCut "H" statt "STRG+H" zugewiesen?
Falls was im Sourcecode steht dann wahrscheinlich "Ord('H')", "#72" oder "#104".

Danach hab ich die Quellen durchforstet:
onKey, Key, 'h', 'H', #104, #72, Hotkey, Shortcut

Nix.

Menüs sind alle sauber, da bin ich jetzt vier oder fünfmal durch und hab sogar die Trennstriche gecheckt (war ja manchmal recht spät): Nix.

Wenn es ein schlankeres Projekt wäre, würd ich es ja einfach neu aufsetzen. Ist dummerweise mein "dickstes" (Klar, Murphy lacht sich schlapp!)

Um noch eins drauf zu setzen:

Das MainForm bekommt bei onKeyDown (KeyPreview True) nichts mit, wenn ich ein "h" eingebe. Alle andere Tasten schon, wenn ich allerdings "Datei öffnen" auf mache (ist ja ebenfalls ein Systemdialog), dann KLAPPT DAS "h"!!!!. Warum - Himmel, A...., nimmt der - ebenfalls Sys-Dialog - für Suchen das nicht? Auch ein Eingabefeld, das ich jetzt mal provisorisch draufgeklebt habe, nimmt alles aus "h".


---
NSI

marabu 9. Jul 2005 11:41

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Du sagst du hast die Quellen durchsucht - hast du auch die Formulare nach Text konvertiert und darin gesucht?

Grüße vom marabu

Robert_G 9. Jul 2005 11:43

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Zitat:

Zitat von marabu
Du sagst du hast die Quellen durchsucht - hast du auch die Formulare nach Text konvertiert und darin gesucht?

Genau das wollte ich auch gerade vorschlagen... :mrgreen:

NSI 9. Jul 2005 12:12

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Zitat:

Zitat von marabu
Du sagst du hast die Quellen durchsucht - hast du auch die Formulare nach Text konvertiert und darin gesucht?

Grüße vom marabu

Grundsätzlich ja, aber ich mach das nochmal systematisch.

Es gibt übrigens noch was neues: Mit CapsLock und H klappt es; dann kommt ein "h" aber kein "H" mehr... :wiejetzt:

Es muss also was mit den Scancodes der Tastatur zu tun haben!

---
NSI

Dust Signs 9. Jul 2005 12:32

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Das Ganze schonmal versucht auf einem anderen Rechner zu reproduzieren?

Dust Signs

NSI 9. Jul 2005 12:35

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Zitat:

Zitat von Dust Signs
Das Ganze schonmal versucht auf einem anderen Rechner zu reproduzieren?

Dust Signs

Nicht nur einer!


---
NSI

MrKnogge 9. Jul 2005 12:39

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Weist du was du alles, seit dem Zeitpunkt, als der Fehler noch nicht auftrat, verändert hast ?

gruss

NSI 9. Jul 2005 12:58

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Zitat:

Zitat von MrKnogge
Weist du was du alles, seit dem Zeitpunkt, als der Fehler noch nicht auftrat, verändert hast ?

gruss

Das war die magische Frage, der ich eben nachgegangen bin. Das Ergebnis ist recht niederschmetternd: Ich kann es nicht ermitteln. Denn alle "alten" Programm-Versionen, die ich noch habe, haben den Fehler schon (interessant, dass das noch keiner gemerkt hat, aber darüber jetzt nachzudenken, bringt mich nicht weiter).

Ich habe allerdings (und jetzt wird es - zumindest für mich - völlig mystisch) ein kleines Formular entdeckt (Eingabe einer Zoomstufe für den Preview) in dem das "h" funktioniert. Es muss also offenbar was mit dem "MainForm" zu tun haben.

Mal anders herum: Wo kann man Shortcuts/Hotkeys setzen?

Ich kenne eigentlich nur Menüs. Die habe ich (s.o.) alle mehrfach durchgesehen. Also muss es ja irgendwo anders ebenfalls gehen. Ich denke, so herum könnte es was werden (das macht das Tippgeben evtl. auch einfacher??)

___
NSI

nailor 9. Jul 2005 14:23

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
wenn du in den step-for-step-modus (wo man immer F7 drücken muss) gehst, könntest du unter umständen rausfinden, was passiert, wenn du "h" drückst (vorausgesetzt, es passiert auf programmebene was komisches).

NSI 9. Jul 2005 14:34

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Zitat:

Zitat von nailor
wenn du in den step-for-step-modus (wo man immer F7 drücken muss) gehst, könntest du unter umständen rausfinden, was passiert, wenn du "h" drückst (vorausgesetzt, es passiert auf programmebene was komisches).

Das hab ich schon versucht; allerdings läuft das Programm irgendwann im "Idle" und wartet auf eine Eingabe - in einer Schleife. Da komme ich nur raus, wenn ich mal F9 drücke. Und dann war es das schon. Ich bin mit den Debugger-Möglichkeiten nicht sonderlich vertraut; ich denke, hier gibt es sicherlich was in Richtung: "Simuliere eine Tasteneingabe". Ich suche schon in der Online-Hilfe, falls jemand das einfach so weiß, wäre mir ebenfalls geholfen!


---
NSI

NSI 11. Jul 2005 07:36

Re: TFindDialog akzeptiert den Buchstaben "h" nich
 
Danke allen Helfern und Mitleidenden: Der „Fehler” ist gefunden. Zum Glück habe ich einen Bruder, der ebenfalls „des Delphi mächtig” ist und gestern Zeit hatte. Der hat völlig unvoreingenommen mal die Quellen durchgesehen. Das Problem?

Ganz einfach: Nimm niemals an, das etwas nicht sein kann. Den Fehler habe ich nämlich gemacht. Im Gegensatz zu mir hat Brüderchen ebenfalls die Menüs kontrolliert, die dynamisch entstehen. Ich bin da — völlig betriebsblind — drüber weg, weil ich ja zur Laufzeit keine Shortcuts im Code erzeuge. Das ist zwar soweit richtig; doof nur, wenn ein Menü einen Haupteintrag hat, der ja durchaus einen Shortcut haben kann. Dass der nie etwas ausgelöst hat (sonst wäre es ja aufgefallen) und bei meinen Suchläufen im Quell-/Formulartext* unentdeckt blieb, ist zwar ein anderes, ungelöstes Rätsel, aber wen interessiert das jetzt?

Ich hätte heute angefangen, das Ding neu aufzusetzen… .

---
NSI

* Ich vermute, ich hätte nach dem Tasten-Scancode suchen müssen. Denn es wurde die Taste h abgefangen, nicht der Buchstabe „h”.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:01 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