AGB  ·  Datenschutz  ·  Impressum  







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

Mehrere Formobjekte mit Focused = True?

Ein Thema von Freiwilderer · begonnen am 2. Dez 2010 · letzter Beitrag vom 3. Dez 2010
Antwort Antwort
Seite 1 von 2  1 2      
Freiwilderer

Registriert seit: 26. Mai 2009
163 Beiträge
 
Delphi 7 Enterprise
 
#1

Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 17:07
Delphi-Version: 7
Hallo,
ich habe ein seltsames Phänomen. Und zwar will ich im FormKeydown abfragen, ob ein bestimmtes Objekt den Focus hat oder nicht. Wenn der Key dann ein VK_Return is, soll er was bestimmtes machen.
Irgendwie macht er das aber immer und nicht nur, wenn das feld fokusiert ist...
Habe dann im debuger geschaut, ob Focused wirklich true ist.
Wenn ich den cursor über das Focused halte, wird angezeigt: Nicht verfügbarer Wert
Wenn ich im Debug-Inspektor nachschaue, steht dort True.

Das ist bei mehreren Objekten gleichzeitig und ich steh da momentan zugegeben ziemlich auf dem schlauch ...
Die meisten Objekte sind TMaskEdits, das selbe habe ich aber auch bei einer TRadioGroup und einem cxGridDBTableView ...

Hat jemand eine Idee, woran das liegen könnte?

würde mich über hilfe sehr freuen,

mfg
Freiwilderer
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#2

AW: Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 17:21
Es kann immer nur ein Control den Fokus haben. Zeig doch einmal Deinen Code.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Freiwilderer

Registriert seit: 26. Mai 2009
163 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 17:29
naja, das hab ich auch gedacht

sinngemäß steht da das hier, der komplette code wäre zu komplex, aber mehr macht der an der stelle nicht.


Delphi-Quellcode:
procedure TfParcel.FormKeyDown(Sender: TObject; var Key: Word;
   Shift: TShiftState);
var intTemp: int64;
begin
   inherited;
   if ButtonMode in [bmBrowse, bmSearch] then
   begin
      case Key of
         vk_Return:
                        begin
                            if (ButtonMode in [bmSearch]) and (qParcelLocal.Active) and (meSenderID.Focused or meClientRef.Focused or ieEplIdFrom.Focused or ieEplIdTill.Focused or
            dtpOutboundDateFrom.Focused or dtpOutboundDateTill.Focused or meReceiverCtrCode.Focused or meReceiverZipcode.Focused or RadioGroup1.Focused) then
                                    showmessage('Hallo');
                        end;
        end;
end;
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#4

AW: Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 17:32
Die Bedingung trifft ja zu, wenn eines der angegebenen gefühlten 23.000 Controls den Fokus hat (sofern die anderen Bedingungen zutreffen).
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Freiwilderer

Registriert seit: 26. Mai 2009
163 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 17:49
Ja, ich weiß
Aber die sind alle true^^
auch, wenn ich gar keinen ausgewählt hab ...
Eigentlich sollte das nur das Grid abfragen, aber das ging ja nich, weil das auch immer fokussiert war
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#6

AW: Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 17:55
Und wenn Du statt auf Focused einmal das ActiveControl abfragst? Macht in meinen Augen zwar nicht viel Sinn, einen Versuch ist es aber wert.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Freiwilderer

Registriert seit: 26. Mai 2009
163 Beiträge
 
Delphi 7 Enterprise
 
#7

AW: Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 18:03
Hmm, ich werd das mal testen, bin leider oder eher zum Glück nich mehr auf der Arbeit
Vielleicht klappt's ja damit, kann mir das auch nich erklären ...
Danke schonmal für den tip
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 19:53
Bist du sicher, dass .Focused bei allen True ist? Wenn keine vollständige Boolean-Evaluierung aktiviert ist, dann bricht er bei or beim 1. wahren Term ab, da das ergebnis dann ja insgesamt wahr wird
Markus Kinzler
  Mit Zitat antworten Zitat
Freiwilderer

Registriert seit: 26. Mai 2009
163 Beiträge
 
Delphi 7 Enterprise
 
#9

AW: Mehrere Formobjekte mit Focused = True?

  Alt 2. Dez 2010, 20:40
Ich hab im Debugger ja nachgeschaut ...

Ich glaub auch nich wirklich, dass die alle true sind, aber es wird da nunmal so angezeigt und das programm verhält sich auch so als ob ...
  Mit Zitat antworten Zitat
Freiwilderer

Registriert seit: 26. Mai 2009
163 Beiträge
 
Delphi 7 Enterprise
 
#10

AW: Mehrere Formobjekte mit Focused = True?

  Alt 3. Dez 2010, 08:42
so gehts ....

Delphi-Quellcode:
            if (ButtonMode in [bmSearch]) and (qParcelLocal.Active) and NOT(ActiveControl = meSenderID) and NOT(ActiveControl = meClientRef) and NOT(ActiveControl = ieEplIdFrom)
             and NOT(ActiveControl = ieEplIdTill) and NOT(ActiveControl = dtpOutboundDateFrom) and NOT(ActiveControl = dtpOutboundDateTill) and NOT(ActiveControl = btnRestrictParcels)
             and NOT(ActiveControl = meReceiverCtrCode) and NOT(ActiveControl = meReceiverZipcode) and NOT(ActiveControl = RadioGroup1) then
verstehs zwar immer noch nicht (zumal das mit dem control des express grid views nich funktioniert hat)
danke für den tip
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 14:31 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