Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Entf-Taste in mehreren Komponenten? (https://www.delphipraxis.net/180982-entf-taste-mehreren-komponenten.html)

OrNEC 4. Jul 2014 20:22

Entf-Taste in mehreren Komponenten?
 
Hallo,

ich habe ein Edit und eine ListView, KeyPreview des Forms ist true. Nun wenn sich der Cursor in dem Edit befindet und man die Taste Entf klickt, springt die Funktion zum entfernen eines Eintrages in der ListView an, was ich nicht möchte. Wie weise ich die Entf-Taste der jeweiligen Komponenten zu?

Danke!

Sir Rufo 4. Jul 2014 20:54

AW: Entf-Taste in mehreren Komponenten?
 
Dann erklär doch mal, wann die Entfernen-Taste was auslösen soll.

Genau das musst du dann auch deinem Programm beibringen.

Z.B.:
"Wenn ein Edit-Control aktiv ist, dann soll der Standard passieren"

Oder besser noch die Ausnahmen vom Standard-Verhalten der Entfernen-Taste bei bestimmten Controls (ListView).

Dann musst du also nur aktiv werden, wenn ein ListView aktiv ist und dann bei dem ListView das aktuelle bzw. alle selektierten Einträge entfernen.

(Wenn du die Schlagworte nun auf englisch übersetzt hast du eigentlich schon die Lösung)

himitsu 4. Jul 2014 21:02

AW: Entf-Taste in mehreren Komponenten?
 
Genau das Gegenteil fon dem http://www.delphipraxis.net/180894-f...mit-tedit.html ?

"Ich hab eine globale Behandlung für eine Taste eingebaut und wundere mich jetzt, daß die eben global vor allem Anderem abgearbeitet wird." :stupid:


- entweder man macht soeinen Mist nicht global
- oder man nuß eben dort einbauen, daß in einem bestimmten Moment das globale nicht gemacht wird, oder man baut die einzelne Behandlung oder auch manuell ein,
wenn das bestimmt Control aktiv ist

Dejan Vu 4. Jul 2014 21:26

AW: Entf-Taste in mehreren Komponenten?
 
Zitat:

Zitat von Sir Rufo (Beitrag 1264500)
Genau das musst du dann auch deinem Programm beibringen.

Echt? Also ich muss hier nix beibringen, das Edit behandelt die Entf-Taste ganz normal, ohne das ich irgend etwas tue. Nur für das ListView muss ich definieren, was die Entf-Taste machen soll.

Zitat:

Zitat von himitsu (Beitrag 1264502)
"Ich hab eine globale Behandlung für eine Taste eingebaut und wundere mich jetzt, daß die eben global vor allem Anderem abgearbeitet wird." :stupid:

Wo ist denn da was global :stupid: ?

Wie wäre es, wenn ihr weniger sarkastisch, aber dafür etwas nachsichtiger hinsichtlich der Art der Fragestellung wärt?

himitsu 4. Jul 2014 21:30

AW: Entf-Taste in mehreren Komponenten?
 
Wo?

KeyPreview :stupid:



Hinten gibt es zwei Schränke (Edit und ListBox), wobei der eine Schrank (Edit) auf ein bestimmtes Ereignis (Entf) reagieren würde.
Wenn jetzt aber schon die Haustür der Wohnung (Form) auf das selbe Ereignis (Entf) reagiert und das abfängt, bevor es bis zum Schrank (Edit) durchrauscht, dann wird der Schrank (Edit) natürlich nicht darauf reagieren können.
- entweder der Türsteher fragt "wo willst du hin" und lässt das Ereignis eventuell einfach durch
- oder er fängt es dennoch ab, aber bringt wenigstens es selber zum Edit

Sir Rufo 4. Jul 2014 22:14

AW: Entf-Taste in mehreren Komponenten?
 
Zitat:

Zitat von Dejan Vu (Beitrag 1264503)
Zitat:

Zitat von Sir Rufo (Beitrag 1264500)
Genau das musst du dann auch deinem Programm beibringen.

Echt? Also ich muss hier nix beibringen, das Edit behandelt die Entf-Taste ganz normal, ohne das ich irgend etwas tue. Nur für das ListView muss ich definieren, was die Entf-Taste machen soll.

Zitat:

Zitat von himitsu (Beitrag 1264502)
"Ich hab eine globale Behandlung für eine Taste eingebaut und wundere mich jetzt, daß die eben global vor allem Anderem abgearbeitet wird." :stupid:

Wo ist denn da was global :stupid: ?

Wie wäre es, wenn ihr weniger sarkastisch, aber dafür etwas nachsichtiger hinsichtlich der Art der Fragestellung wärt?

Wie wäre es wenn du den ersten Beitrag sorgfältiger lesen würdest?

Wie denkst du kann es passieren, dass beim Drücken der Entfernen-Taste ein Eintrag aus einer ListView verschwindet? Das Stichwort "KeyPreview der Form" lässt also erahnen warum das passiert.

Und den TE in die richtige Richtung stubsen - ihm also die Chance zum selber erarbeiten geben - war hier bis zum 31. März 2014 eigentlich eine gängige und bewährte Praxis.

Sarkasmus ist in meinem Beitrag nicht enthalten ... aber ich werde jetzt mal schauen, wie du dem TE hier hilfreich zur Seite stehst.

Dejan Vu 5. Jul 2014 07:20

AW: Entf-Taste in mehreren Komponenten?
 
Der 'Sarkasmus' war zu allgemein, Sir Rufo. Deinen Beitrag betrifft das nicht, und da Du dich bei meinem Rundumschlag angesprochen fühlen musstest, entschuldige ich mich.

PS: Den Beitrag habe ich gelesen, nur keinen Code. Und mutmaßen tue ich nicht, hätte ich aber können.

OrNEC 5. Jul 2014 11:34

AW: Entf-Taste in mehreren Komponenten?
 
Die Entf-Taste habe ich einem (Delete)MenuItem per ShortCut zugewiesen.
Was ich aber jetzt machen soll, um mein Problem zu lösen, ist mir noch nicht ganz glasklar... aber ich denke noch nach...

Aviator 5. Jul 2014 16:52

AW: Entf-Taste in mehreren Komponenten?
 
Der Delete-Shortcut bezog sich dann ja vmtl. auf die ListView um dort ein entsprechendes Element rauszulöschen. Also müsstest du im KeyDown, KeyPress oder KeyUp der Form einfach nur auswerten, ob die ListView Komponente gerade den Fokus hat und dann entsprechend das selektierte / die selektieren Element(e) rauslöschen/entfernen.

himitsu 5. Jul 2014 17:20

AW: Entf-Taste in mehreren Komponenten?
 
Zitat:

Zitat von OrNEC (Beitrag 1264533)
Die Entf-Taste habe ich einem (Delete)MenuItem per ShortCut zugewiesen.

Es gibt wichtige Informationen, die sollte man doch mal im Ausgangspost mit erwähnen. :wall:

Und was für ein Menü denn nun?
Hauptmenü oder Kontextmenü nur an der ListBox?

Menüs sind sogar noch globaler, als KeyPreview, da sie noch davor behandelt werden.

Aber jetzt rate mal, warum solche ShortCuts normaler Weise noch ein Strg oder Alt mit drin haben.
> Damit sie nicht einfach so z.B. mit irgendeiner Textbehandlung kollidieren. :stupid:

Tja, und ShortCuts des Hauptmenüs haben halt vorrang vor Allem.

Entweder der Menüeintrag kommt da hin, wo er sich auswirken soll (z.B. ins passende Kontextmenü)
oder du deaktivierst einfach den Eintrag, wenn er nicht arbeiten soll.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:52 Uhr.
Seite 1 von 2  1 2      

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