AGB  ·  Datenschutz  ·  Impressum  







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

Edit mit grauem Text vorbelegen

Ein Thema von d7user1 · begonnen am 26. Nov 2013 · letzter Beitrag vom 26. Nov 2013
Antwort Antwort
d7user1
(Gast)

n/a Beiträge
 
#1

Edit mit grauem Text vorbelegen

  Alt 26. Nov 2013, 10:35
hallo, ich habe die suche schon bemüht, konnte aber keine zufriedenstellende antwort finden.
ich suche eine möglichkeit, ein Edit mit einem grauem Text vorzubelegen, insofern das Edit keinen Text besitzt.

bisher benutze ich folgendes
Delphi-Quellcode:
// source: http://www.delphigroups.info/2/12/273167.html

function setCueBanner(CTRL: THandle; STR: WideString): Integer;
const
 ECM_FIRST = $1500;
 EM_SETCUEBANNER = ECM_FIRST + 1;
begin
 Result := SendMessage(CTRL, EM_SETCUEBANNER, 0, LParam(PWideChar(STR)));
end;
das funktioniert ganz gut. aber wenn ich in das Edit reinklicke, verschwindet der graue text. gibt es eine möglichkeit, den text nicht verschwinden zu lassen und gleichzeitig einen blinkenden cursor anzeigen zu lassen, solange, bis der benutzer einen text eingibt?
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Edit mit grauem Text vorbelegen

  Alt 26. Nov 2013, 10:38
Du hast dir die offizielle Doku zu EM_SETCUEBANNER angesehen?
  Mit Zitat antworten Zitat
d7user1
(Gast)

n/a Beiträge
 
#3

AW: Edit mit grauem Text vorbelegen

  Alt 26. Nov 2013, 10:47
danke, genau das war es was gefehlt hat. das lehrt mich, die dokus in zukunft anzusehen.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#4

AW: Edit mit grauem Text vorbelegen

  Alt 26. Nov 2013, 11:07
Deine Überschrift ist falsch.
> Das mit dem "Vorbelegen" hast du garnicht gefragt, da es ja schon funktionierte.

Aber falls nochjemand das Problem hat, aber den TextHint-Property in neueren Edits nutzen möchte.
Delphi-Quellcode:
TCustomEdit = class(TWinControl)
  procedure DoSetTextHint(const Value: string); virtual;
Der muß diese Methode überschreiben und bei WPARAM eine 1 angeben, bzw. dort mal ein Ord(True) angeben, bzw. eine entsprechende Variable/Property einbauen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
d7user1
(Gast)

n/a Beiträge
 
#5

AW: Edit mit grauem Text vorbelegen

  Alt 26. Nov 2013, 11:19
Delphi-Quellcode:
TCustomEdit = class(TWinControl)
  procedure DoSetTextHint(const Value: string); virtual;
wo ist denn der unterschied zwischen meiner lösung und deiner? das verstehe ich nicht.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#6

AW: Edit mit grauem Text vorbelegen

  Alt 26. Nov 2013, 14:07
Es gibt für dich keinen Unterschied, da TextHint in Delphi 7 noch nicht vorhanden ist.
In neueren Delphis (irgendwann ab/nach Delphi 2006) wurde EM_SETCUEBANNER in die VCL integriert und über Delphi-Referenz durchsuchenTEdit.TextHint bereitgestellt.

Es ist nur, wenn nochmal jemand irgendwann das gleich Problem hat, zufällig sogar die Forensuche benutzt und dann hier landet.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  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 21:42 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