AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Komponenten Highlighter

Ein Thema von Primus · begonnen am 16. Sep 2002 · letzter Beitrag vom 25. Apr 2003
Antwort Antwort
Seite 1 von 2  1 2   
Primus

Registriert seit: 16. Sep 2002
Ort: Werneuchen
32 Beiträge
 
#1

Komponenten Highlighter

  Alt 16. Sep 2002, 19:52
Hallo an alle,

hat jemand eine Idee wie ich sämtliche Eingabefelder (TEdit, TDBEdit, TDBLookup...) bei der focuserhalt Highlighten kann? Das heist wenn aktiv dann eine andere Hintergrundfarbe und wenn nicht mehr aktiv dann wieder normal.

Danke
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2
  Alt 16. Sep 2002, 20:15
Moin Primus,

ich weiss natürlich nicht, ob alle die Komponenten, die Du verwenden willst über diese Events verfügen, aber Du könntest im OnEnter/OnExit Event die Farbe(n) entsprechend setzen.
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
Primus

Registriert seit: 16. Sep 2002
Ort: Werneuchen
32 Beiträge
 
#3
  Alt 16. Sep 2002, 20:27
Tach Chris,

das hatte ich schon mal versucht aber das bläht ja den Code so auf,
es handelt sich um eine Verwaltungssoftware für eine Rettungsdienstbereitschaft, sind so ungefähr 200 Eingabefelder. Ich dachte mehr so an eine Funktion die bei jeglichem Focus die Farbe der Komponente ändert.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4
  Alt 16. Sep 2002, 20:31
Das sind höchstens 10 Zeilen Code. Und sowas nennst du Code aufblähen?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von d3g
d3g

Registriert seit: 21. Jun 2002
602 Beiträge
 
#5
  Alt 16. Sep 2002, 20:41
Hi Primus,

du musst ja nicht für jede Komponente einen OnEnter/OnExit-Event-Handler schreiben. Schreib doch einen und stell im Objektinspektor unter "Events" einfach immer die gleiche Prozedur ein, das dürfte den Code kaum aufblähen.

MfG,
d3g
-- Crucifixion?
-- Yes.
-- Good. Out of the door, line on the left, one cross each.
  Mit Zitat antworten Zitat
Benutzerbild von thomasdrewermann
thomasdrewermann

Registriert seit: 8. Jun 2002
Ort: Herne
575 Beiträge
 
Delphi 3 Professional
 
#6
  Alt 16. Sep 2002, 22:50
Dann wird doch immer das eine Button grün. egal über welches Feld man geht
Sport ist mord...
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#7
  Alt 16. Sep 2002, 22:55
Moin Thomas,

nein, man bekommt im Parameter Sender ja übergeben, bei welcher Kompo das Ereignis ausgelöst wurde, und kann dann entsprechend abfragen, z.B.

Code:
[b]if[/b] (Sender [b]is[/b] TButton) [b]then[/b]
[b]begin[/b]
  [color=#000080]// z.B. [/color]
  TButton(Sender).Font.Size := 12;
[b]end[/b];
Mit anderen Controls und/oder Eigenschaften entsprechend.
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 Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8
  Alt 16. Sep 2002, 22:57
Schon mal folgendes im Code gesehen: Sender as TObject?
Da mit kannst du prüfen welcher Button das Ereignis ausgelöst hat.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Primus

Registriert seit: 16. Sep 2002
Ort: Werneuchen
32 Beiträge
 
#9
  Alt 17. Sep 2002, 07:41
Hallo,

mann an so was hätte ich ja auch denken können.
Danke für die Hilfe, manchmal sieht mann den Wald vor lauter
Programmzeilen nicht...

Tschuss

Primus
  Mit Zitat antworten Zitat
Benutzerbild von Ricane
Ricane

Registriert seit: 21. Mär 2003
Ort: Quickborn
170 Beiträge
 
Delphi 7 Architect
 
#10

Nochmal Sender ...

  Alt 25. Apr 2003, 08:20
Moin,

ich habe ein ähnliches Problem, wie es hier auch schon behandelt wurde.

Also, in einer ListBox habe ich folgendes stehen ...
Code:
If MidStr(Erinnern[Lst_Artikel.ItemIndex + 1] ,1,1) = '1' then CheckBox1.Checked := True;
Das bedeutet ja das er, wenn die Abfrage True ist, das Ereignis CheckBox1Click ausführt.

Dort soll er eine Variable wieder auf False setzten, aber nur wenn das Ereignis nicht von der ListBox ausgelöst wird, sondern direkt von der CheckBox.

Nachdem ich das hier gelesen habe, habe ich es mit folgendem Code probiert, den ich in die CheckBox1Click Prozedur gelegt habe...
Code:
If Sender is TListBox then Exit;          ... oder ...
If Sender = Lst_Artikel then Exit;        ... oder ...
If (Sender is TListBox) then Exit
Aber immer ohne Erfolg. Wenn ich mir das während des Debbugens angucke ist die VAR Sender immer leer. (Egal wer das Ereignis auslöst).

PS: Natürlich ist Sender deklariert...


Grüsse,

Ricane
Hendrik
So much to Code... so less Time....

www.RicaneSoftware.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 03:46 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