AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi feststellen ob geklickt ohne Klick-Prozedur
Thema durchsuchen
Ansicht
Themen-Optionen

feststellen ob geklickt ohne Klick-Prozedur

Ein Thema von TheAn00bis · begonnen am 5. Dez 2004 · letzter Beitrag vom 5. Dez 2004
Antwort Antwort
Seite 1 von 2  1 2      
TheAn00bis

Registriert seit: 7. Jun 2004
386 Beiträge
 
#1

feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 14:46
Hi,

Ich habe 40Panels und will herausfinden, welches geklickt wurde. Natürlich könnte ich für jedes die onClick-Procedur festlegen und dann in eine Variable schreiben ob es geklickt wurde, allerdings wäre das bei der Menge sehr aufwändig. Gibt es eine andere Möglichkeit festzustellen, welche geklickt wurde? (so Ereignisprozedur artig - ich weiß nicht ob der Begriff in Delphi anwendbar ist)
  Mit Zitat antworten Zitat
Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 14:50
Zitat von TheAn00bis:
Natürlich könnte ich für jedes die onClick-Procedur festlegen und dann in eine Variable schreiben ob es geklickt wurde, allerdings wäre das bei der Menge sehr aufwändig.
Du kannst doch einfach allen Panel dieselbe OnClick Prozedur zuweisen
(Designzeit: Panels markieren -> Ereignisse -> OnClick -> Doppelklick)
Dani H.
At Least I Can Say I Tried
  Mit Zitat antworten Zitat
TheAn00bis

Registriert seit: 7. Jun 2004
386 Beiträge
 
#3

Re: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 14:52
Und wie finde ich dann raus welches Panel es war das geklickt wurde?
  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: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 14:53
Zitat von TheAn00bis:
Und wie finde ich dann raus welches Panel es war das geklickt wurde?
OnClick hat einen Parameter "Sender", der gleich der Komponente ist, die geklickt wurde (bzw. von welcher die Aktion ausgeht). =

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 Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 14:53
Im OnClick Event gibt es den Parameter Sender. Dieses Objekt hat den Event ausgelöst.
Dani H.
  Mit Zitat antworten Zitat
TheAn00bis

Registriert seit: 7. Jun 2004
386 Beiträge
 
#6

Re: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 14:57
Sorry, das ich mich vielleicht so dumm anstelle, aber wie kann ich den Namen des Senders in einer Variable speichern?
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

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

Re: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 15:00
Zitat von TheAn00bis:
Sorry, das ich mich vielleicht so dumm anstelle, aber wie kann ich den Namen des Senders in einer Variable speichern?
Hi,

z.B. so

Delphi-Quellcode:
var
  CompName: string;
begin
  if (Sender is TComponent) then
    CompName := TComponent(Sender).Name else
  CompName := Sender.Classname; // falls es keine Komponente ist
end;
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 Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#8

Re: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 15:01
Sender : TObject

->

Delphi-Quellcode:
var DeinObject : TObject;

procedure TPanel1.Click(Sender : TObject);
begin
  DeinObject := Sender;
end;
So würde ichs machen
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

Re: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 15:02
Zitat von mirage228:
Hi,

z.B. so

Delphi-Quellcode:
var
  CompName: string;
begin
  if (Sender is TComponent) then
    CompName := TComponent(Sender).Name else
  CompName := Sender.Classname; // falls es keine Komponente ist
end;
mfG
mirage228
Sokann man aber nicht auf das Panel zugreifen oder ??

[edit]Ups... Doppelpost [/edit]
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

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

Re: feststellen ob geklickt ohne Klick-Prozedur

  Alt 5. Dez 2004, 15:04
Zitat von Neutral General:
Zitat von mirage228:
Hi,

z.B. so

Delphi-Quellcode:
var
  CompName: string;
begin
  if (Sender is TComponent) then
    CompName := TComponent(Sender).Name else
  CompName := Sender.Classname; // falls es keine Komponente ist
end;
mfG
mirage228
Sokann man aber nicht auf das Panel zugreifen oder ??
Nun, er hat gefragt, wie er den Namen des Senders (= des Panels) speichern kann. Was er damit macht, weiss nicht.
Wenn man wieder das Panel haben will, muss man halt Delphi-Referenz durchsuchenFindComponent verwenden.

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
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 06:04 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