AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Edit per SetWindowLong auf Zahleneingaben begrenzen geht net
Thema durchsuchen
Ansicht
Themen-Optionen

Edit per SetWindowLong auf Zahleneingaben begrenzen geht net

Ein Thema von Pr0g · begonnen am 27. Jun 2005 · letzter Beitrag vom 27. Jun 2005
Antwort Antwort
Benutzerbild von Pr0g
Pr0g

Registriert seit: 21. Mai 2004
809 Beiträge
 
Delphi 7 Personal
 
#1

Edit per SetWindowLong auf Zahleneingaben begrenzen geht net

  Alt 27. Jun 2005, 14:52
Hallo,

ich habe auf einer Form ein TEdit und wollte dies per
Delphi-Quellcode:
  // EdtNeubesuchNach auf Zahlen beschränken
  SetWindowLong(
    EdtNeubesuchNach.Handle,
    GWL_STYLE,
    GetWindowLong(EdtNeubesuchNach.Handle, GWL_STYLE) or ES_NUMBER);
auf Zahleneingaben beschränken, doch es klappt in der Form nicht. Wenn ich eine anderen Form aus dem Programm, oder ein anderes Projekt nehmen, geht alles problemlos. Nur in der Form klappt der Code nicht. Woran kann das liegen?

MfG Pr0g
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Edit per SetWindowLong auf Zahleneingaben begrenzen geht

  Alt 27. Jun 2005, 16:17
Moin Andreas,

der Fehler muss woanders liegen, denn das klappt mit Deinem Code problemlos.
Ist es wirklich ein TEdit oder ein Fremdkomponente?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Pr0g
Pr0g

Registriert seit: 21. Mai 2004
809 Beiträge
 
Delphi 7 Personal
 
#3

Re: Edit per SetWindowLong auf Zahleneingaben begrenzen geht

  Alt 27. Jun 2005, 17:26
Es ist ein ganz normales TEdit. Ich habe nun noch ein bisschen getestet und scheint zu klappen, wenn ich den Code im nachhinein ausführe also bspw. OnKeyDown, bzw. jetzt habe ich ihn im OnShow, das geht auch (in der überschrieben ShowModal gings nicht).

Im OnShow könnte ich es lassen, damit habe ich eigentlich keine Probleme, mich wundert nur, dass es im OnCreate nicht geht. Es ist eigentlich ne ganz normale Form und da habe ich auch nichts überschrieben oder so.
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Edit per SetWindowLong auf Zahleneingaben begrenzen geht

  Alt 27. Jun 2005, 17:37
Hi,

vielleicht hast Du Delphi-Referenz durchsuchenOldCreateOrder der Form auf TRUE, dann werden die Komponenten nämlich erst nach dem OnCreate Ereignis erstellt.
Demnach wird der Aufruf von SetWindowLong auf nicht erfolgreich sein in dem Fall.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Edit per SetWindowLong auf Zahleneingaben begrenzen geht

  Alt 27. Jun 2005, 17:41
Moin Andreas,

merkwürdig.
Ich habe es gerade noch einmal getestet.
Neues Projekt, ein TEdit auf das Formular und ES_NUMBER eingestellt:
Funktioniert auf Anhieb.

@Mirage:
Und das unabhängig von OldCreateOrder
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Edit per SetWindowLong auf Zahleneingaben begrenzen geht

  Alt 27. Jun 2005, 17:46
Zitat von Christian Seehase:
@Mirage:
Und das unabhängig von OldCreateOrder
Hm... war jetzt auch nur eine Vermutung von mir.
Aber der Code müsste auf jeden Fall funktionieren. Wie schaut denn der Wert von Handle aus? Gibt IsWindow dafür "true" zurück?

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von Pr0g
Pr0g

Registriert seit: 21. Mai 2004
809 Beiträge
 
Delphi 7 Personal
 
#7

Re: Edit per SetWindowLong auf Zahleneingaben begrenzen geht

  Alt 27. Jun 2005, 17:56
IsWindow gibt True zurück, das Ding hat nen Handle. Ich weiß nicht was es mit der Form auf sich hat, bei anderen gehts ja auch. Aber solange es im OnShow geht bin ich schon zufrieden.
  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 21:56 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