AGB  ·  Datenschutz  ·  Impressum  







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

Hints für nicht-Enabled-te Komponenten

Ein Thema von mbs · begonnen am 11. Feb 2004 · letzter Beitrag vom 13. Feb 2004
Antwort Antwort
mbs

Registriert seit: 29. Dez 2003
31 Beiträge
 
#1

Hints für nicht-Enabled-te Komponenten

  Alt 11. Feb 2004, 23:38
Hi!

Ist es irgendwie möglich Hinweise (Hints) für Elemente anzuzeigen (z.B. Edits, Checkboxen, etc) die nicht aktiv (also enabled := false) sind?
Gruß,
MB
  Mit Zitat antworten Zitat
Kinimod8

Registriert seit: 9. Jan 2004
Ort: Barsbüttel
317 Beiträge
 
Delphi 6 Personal
 
#2

Re: Hints für nicht-Enabled-te Komponenten

  Alt 12. Feb 2004, 16:25
Nicht das ich wüsste.
Dominik Peters
  Mit Zitat antworten Zitat
Kinimod8

Registriert seit: 9. Jan 2004
Ort: Barsbüttel
317 Beiträge
 
Delphi 6 Personal
 
#3

Re: Hints für nicht-Enabled-te Komponenten

  Alt 12. Feb 2004, 16:27
Nicht das ich wüsste.

Kompos mit Enabled := false sind, wie du geagt hast, nicht aktiv.

Brauchen unaktive Komponenten denn Hilfe? Glaub ich nicht..
Dominik Peters
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#4

Re: Hints für nicht-Enabled-te Komponenten

  Alt 12. Feb 2004, 16:38
Zitat von Kinimod8:
Brauchen unaktive Komponenten denn Hilfe? Glaub ich nicht..
Ja brauchen sie! Helft den inaktiven Komponenten, wieder aktiv zu werden!!

Aber Scherz beiseite: Ich kenne leider auch keine Möglichkeit dafür, aber vielleicht kannst du das ganze ja per Hand machen. Also mit einem Timer und den Mouse Events. (Wenn Maus im Control ist und sich länger als x Sekunden nicht bewegt, ein Panel etc. an der Mausposition anzeigen und nach x Sekunden wieder unsichtbar machen...oder so )

Man liest sich, Stanlay
  Mit Zitat antworten Zitat
mbs

Registriert seit: 29. Dez 2003
31 Beiträge
 
#5

Re: Hints für nicht-Enabled-te Komponenten

  Alt 12. Feb 2004, 18:13
Hi!

Ja, meine inaktiven Komponenten brauchen Hints. Das soll aber auch hier nicht weiter diskutiert werden.

Danke, Kinimod8, für die Idee. Allerdings ist das ziemlich aufwendig für mehrere Komponenten, denn ich müsste ja dann mit THintWindow ein eigenes Hint-Fenster erzeugen, damit es auch identisch mit den anderen Hints ist.

Falls jemand doch noch eine Lösung kennt, bin ich selbstverständlich sehr offen dafür
Gruß,
MB
  Mit Zitat antworten Zitat
Kinimod8

Registriert seit: 9. Jan 2004
Ort: Barsbüttel
317 Beiträge
 
Delphi 6 Personal
 
#6

Re: Hints für nicht-Enabled-te Komponenten

  Alt 12. Feb 2004, 18:15
@mbs: Ich hatte die Idee nicht, das war Stanlay
Dominik Peters
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#7

Re: Hints für nicht-Enabled-te Komponenten

  Alt 12. Feb 2004, 18:30
Zitat von mbs:
Danke, Kinimod8, für die Idee. Allerdings ist das ziemlich aufwendig für mehrere Komponenten[...]
Nun ja, wenn du das ganze schön allgemein hälts, is es glaub ich gar nicht so umständlich. Hier ein Vorschlag:

1. Ein Timer überprüft in bestimmten Intervallen, über welchem Control die Maus ist und speichert diese Komponente, oder besser, deren Namen in einer Variablen.

2. Bei jedem Timer Event wird überprüft, ob es sich bei der Komponente, über der sich die Maus befindet, um die gleiche, wie beim letzten Durchlauf handelt. Wenn ja, so wird eine Zählvariable um eins erhöht. Wenn nicht, wird der Zähler (Die Zählvariable) wieder auf Null gesetzt.

3. Bei jedem Timer Event wird verglichen, ob die Zählvariable eine so hohe Marke erreicht hat, dass ein Hint angezeigt werden muss. Ist dies der Fall, wird die Zählvariable auf Null gesetzt und ein anderer Timer für die Anzeige des Hints aktiviert.

4. Der zweite Timer erhält als Ausgangsinterval 1 msek und erhält beim ersten Durchlauf als Interval die Zeit, für die der Hint angezeigt werden soll.

5. Bei ersten Durchlauf den zweiten Timers wird das Form/Label/Panel mit dem Hinttext angezeigt. Beim zweiten Durchlauf, der nach der im ersten Durchlauf festgelegten Zeit stattfindet, wird der Hint ausgeblendet, der zweite Timer deaktiviert.

6. Als Ergänzung: Wird während der zweite Timer aktiv ist, die Maus bewegt, deaktiviert der erste Timer den zweiten Timer, so dass alles wieder von vorne anfängt.

Ich hoffe a) dass irgendwer versteht, was ich meine und b) dass ich keinen absoluten Müll geschrieben habe. c) Sollte irgendwer mit einer einfacheren Lösung kommen, drehe ich durch

Man liest sich, Stanlay
  Mit Zitat antworten Zitat
mbs

Registriert seit: 29. Dez 2003
31 Beiträge
 
#8

Re: Hints für nicht-Enabled-te Komponenten

  Alt 13. Feb 2004, 00:24
Hi!

Ja, das kostet zwar n bissl Rechenleistung aber es ist durchaus eine allgemeine Lösung. Danke also dafür. werd mal versuchen, das testweise umzusetzen...
Gruß,
MB
  Mit Zitat antworten Zitat
chris

Registriert seit: 24. Mai 2003
Ort: Düsseldorf
196 Beiträge
 
Delphi 2009 Professional
 
#9

Re: Hints für nicht-Enabled-te Komponenten

  Alt 13. Feb 2004, 00:27
hi,

warum so kompliziert??

versuche es mal in etwa so:

Delphi-Quellcode:
[..]

public
 form1hint: string;
 edit1left, edit1top: integer;
end;

[..]

procedure TForm1.FormCreate(Sender: TObject);
begin
  edit1left:= edit1.left;
  edit1top:= edit1.top;
  edit1.enabled := false;
  edit1.showhint : true;
  edit1.hint := 'edit1hint';
  showhint := true;
  form1hint := 'form1hint'
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var
  rec: trect;
begin
  rec := rect(edit1left, edit1top, edit1left + edit1.width, edit1top + edit1.height);
  if (ptinrect(rec, point(x, y))) and (not edit1.enabled) and (edit1.showhint) then
    hint := edit1.hint
  else
    hint := form1hint
end;
Chris
D2009.4 | Vista SP2 x32
  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 17:34 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