AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen
Thema durchsuchen
Ansicht
Themen-Optionen

WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen

Ein Thema von slemke76 · begonnen am 24. Dez 2005 · letzter Beitrag vom 25. Dez 2005
Antwort Antwort
slemke76

Registriert seit: 29. Mär 2005
Ort: Quakenbrück
146 Beiträge
 
#1

WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen

  Alt 24. Dez 2005, 09:05
Hallo zusammen,

ich habe eine kleine Anwendung, die per WM_SETTEXT Eingaben in verschiedenen Feldern erzeugt. Das funktioniert auch wunderbar.
Genaugenommen geht es um eine Anwendung, die zwei Angaben zu einer Krankenkasse "befüllt" bekommen soll. Das Problem ist nun, daß wenn die Krankenkassennummer per WM_SETTEXT gefüllt wurde, die Anwendung selber die passende Krankenkasse (als Klartext) in das zweite Feld einträgt. Wenn man die Nummer per Hand eingibt, dann passiert dies in dem Moment, wo ich per TAB ins nächste Feld wechsle - ich denke, daß in der Anwendung ein "onChange" Event definiert ist. Dies müsste ich jetzt von meiner Anwendung aus auslösen. Bis jetzt habe ich das nicht hinbekommen. Die Nummer wird korrekt eingetragen, aber die Krankenkasse wird nicht rausgesucht. Ich habe auch schonmal probiert ein chr(9) (TAB) an die Nummern anzuhängen, aber ohne Erfolg. Ich habe auch schonmal mit ein paar weiteren WM_ Nachrichten experementiert (z.B. WM_USERCHANGED) aber habe noch nichts passendes gefunden.

Kann mir jemand helfen ???

lg
Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen

  Alt 24. Dez 2005, 09:36
schick das tab lieber per message und hänge es nicht einfach an den text an.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
slemke76

Registriert seit: 29. Mär 2005
Ort: Quakenbrück
146 Beiträge
 
#3

Re: WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen

  Alt 24. Dez 2005, 10:55
Hi !

verstehe ich noch nicht so ganz - gibt mir doch nochmal ein Stichwort / Befehl dazu. Auch mit WM_SETTEXT ?

lg
Sebastian
  Mit Zitat antworten Zitat
marabu

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

Re: WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen

  Alt 24. Dez 2005, 11:02
Hallo Sebastian,

TAB wird von der DialogBox (Form) zu einer Windows Message verarbeitet. Wenn du es als Text an ein Control schickst, dann hat es nicht die gewünschte Wirkung. Mache es besser so:

PostMessage(Handle, WM_NEXTDLGCTL, 0, 0); Frohe Weihnachten vom marabu
  Mit Zitat antworten Zitat
slemke76

Registriert seit: 29. Mär 2005
Ort: Quakenbrück
146 Beiträge
 
#5

Re: WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen

  Alt 24. Dez 2005, 12:28
Hallo,

auch mit Postmessage hat es leider nicht hingehauen; ich habe auch mal KEYDOWN/KEYUP ausprobiert. Ich habe jetzt die Sndkey32.pas verwendet, damit gehts (?). Wenn ich das korrekt sehe, arbeitet die Routine mit KeyBordEvent ? Wie dem auch sei, trotzdem vielen Dank & frohe Weihnachten !

lg
Sebastian
  Mit Zitat antworten Zitat
marabu

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

Re: WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen

  Alt 25. Dez 2005, 10:07
Der Aufruf von PostMessage() ist völlig unproblematisch, nur beim Handle musst du ein wenig nachdenken: wenn h das Handle des Controls ist, dem du die WM_SETTEXT Nachricht schickst, dann darfst du die Machricht WM_NEXTDLGCTL weder an dieses Handle, noch an das Handle deiner eigenen Form schicken. Wenn du willst, dann probiere es mit GetParent(h) an Stelle von h.

marabu
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

Re: WM_SETTEXT, fremdes Feld updaten und onUpdate auslösen

  Alt 25. Dez 2005, 13:33
Vielleicht reicht auch schon, wenn du dem Fenster erst mit SetFocus den Fokus gibst und dann wieder wegnimmst - die meisten reagieren auch WM_KILLFOCUS.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  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 22:36 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