AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Gegenteil von SetFocus?

Ein Thema von tripleeye · begonnen am 27. Feb 2006 · letzter Beitrag vom 27. Feb 2006
Antwort Antwort
Benutzerbild von tripleeye
tripleeye

Registriert seit: 13. Apr 2005
Ort: Stralsund
20 Beiträge
 
Delphi 2005 Personal
 
#1

Gegenteil von SetFocus?

  Alt 27. Feb 2006, 20:16
Hallo,
ich hab ein Memo, was ich zur Anzeige von Meldungen verwende. Der Anwender soll aber den Cursor nicht in das Memo bekommen.
Die einfachste Methode ist beim OnEnter den Focus auf ne andere Komponente zu setzen, aber gibt es da noch was besseres (eleganteres)?
Vielleicht sowas wie ne DropFocus-Methode?
Murphys Gesetz:
Wenn etwas schief gehen kann, dann wird es auch schief gehen.
Erste digitale Ableitung:
Murphys Gesetz wird durch Computer optimiert.
  Mit Zitat antworten Zitat
Daniel G
(Gast)

n/a Beiträge
 
#2

Re: Gegenteil von SetFocus?

  Alt 27. Feb 2006, 20:18
Naja, wenn der Text weder scrollen noch selektiert werden soll, könntest du das Memo ja einfach auf ein Panel legen und das Panel deaktivieren.
  Mit Zitat antworten Zitat
Benutzerbild von tripleeye
tripleeye

Registriert seit: 13. Apr 2005
Ort: Stralsund
20 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Gegenteil von SetFocus?

  Alt 27. Feb 2006, 20:41
Danke, klappt wunderbar.
Murphys Gesetz:
Wenn etwas schief gehen kann, dann wird es auch schief gehen.
Erste digitale Ableitung:
Murphys Gesetz wird durch Computer optimiert.
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#4

Re: Gegenteil von SetFocus?

  Alt 27. Feb 2006, 20:41
Zitat:
ich hab ein Memo, was ich zur Anzeige von Meldungen verwende
Dann hast du die falsche Komponente genommen
Z.B ein TLabel waere da angebracht.
Thomas
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: Gegenteil von SetFocus?

  Alt 27. Feb 2006, 20:43
Hallo.

Was ist, wenn das Memo gerollt werden muss, weil die Meldung zu umfangreich ausgefallen ist? Was ist, wenn der Benutzer die Meldung oder Teile davon markieren und in die Zwischenablage übernehmen möchte? Mein Rat an dich: setze Memo.ReadOnly auf True und gut ist.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von tripleeye
tripleeye

Registriert seit: 13. Apr 2005
Ort: Stralsund
20 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Gegenteil von SetFocus?

  Alt 27. Feb 2006, 20:49
@toms
Nein, ein missbrauchtes TMemo erfüllt mit seiner TStringList genau meine Anforderungen.
Ich gebe nämlich keine Meldung der Art: "Funtzt" oder "Funtzt nicht", sondern Statusmeldungen, die aus mehreren Lines zusammengesetzt sind. Das ist zwar auch mit nem Label machbar, aber umständlicher.

@marabu
Das war meine bisheringe Lösung, aber der blinkende Cursor nervt. Vielleicht aber belass ich es dabei.
Murphys Gesetz:
Wenn etwas schief gehen kann, dann wird es auch schief gehen.
Erste digitale Ableitung:
Murphys Gesetz wird durch Computer optimiert.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#7

Re: Gegenteil von SetFocus?

  Alt 27. Feb 2006, 20:57
Zitat von tripleeye:
...
Das war meine bisheringe Lösung, aber der blinkende Cursor nervt. Vielleicht aber belass ich es dabei.
Dann fokusier doch einfach das nächste Control, z.B. den default-Button.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: Gegenteil von SetFocus?

  Alt 27. Feb 2006, 21:20
Es geht auch noch anders:

Delphi-Quellcode:
procedure TDemoForm.MemoClick(Sender: TObject);
begin
  with Sender as TMemo do
    Tag := 1 - Tag;
end;

procedure TDemoForm.MemoEnter(Sender: TObject);
begin
  with Sender as TMemo do
    Tag := 0;
end;

procedure TDemoForm.ApplicationEventsIdle(Sender: TObject;
  var Done: Boolean);
begin
  with Memo do
    if Focused then
    if Odd(Tag)
      then ShowCaret(Handle)
      else HideCaret(0);
end;
Gute Nacht.

marabu

bisheringe - sind das Bismarck-Heringe?
  Mit Zitat antworten Zitat
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:09 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