AGB  ·  Datenschutz  ·  Impressum  







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

Textcursor ändern?

Ein Thema von heiopei · begonnen am 11. Jun 2003 · letzter Beitrag vom 13. Jun 2003
Antwort Antwort
heiopei
(Gast)

n/a Beiträge
 
#1

Textcursor ändern?

  Alt 11. Jun 2003, 20:10
Wie kann ich in einem Memo den Textcursor ändern, d.h. machen, dass er blinkt oder eine andere Form(z.B. _), bzw. eine andere Farbe annimmt?
(Der Cursor sollte bspw. so aussehen wie der eines DOS-Fensters-wie _ und
blinkend!!)

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

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#2
  Alt 11. Jun 2003, 21:33
Moin Heiopei,

probiert hab' ich das noch nicht, aber vielleicht ist es ein Anhaltspunkt.
Das was Du meinst nennt sich Caret, und es gibt Funktionen einem Fenster (z.B. wohl einem Memo) ein solches zuzuweisen (CreateCaret), es Blinken zu lassen (GetCaretBlinkTime/SetCaretBlinkTime) und weitere.
Das mit CreateCaret erzeugte/zugewiesene Caret kannst Du als Bitmap Resource einbinden und mittels LoadBitmap laden. So sollte auch ein _ möglich sein.
Am Besten schaust Du Dir das mal im PSDK an, das Thema Caret ist recht umfangreich.
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
heiopei
(Gast)

n/a Beiträge
 
#3
  Alt 13. Jun 2003, 21:18
Hallo Christian Seehase,
das mit Get und SetCaretBlinkTime funktioniert. Aber ich hab nicht rausgefunden, wie das mit CreateCaret gehn soll. Also ich hab in der Hilfe
nachgeschaut, damit ich weiss, wie ich die Parameter setzen muss, aber ich kriegs einfach nicht hin!

Ich glaub des hieß in der Hilfe:

   CreateCaret(HWND, HBITMAP, irgendwasWidth, irgendwasHight); Wie muss ich die Parameter setzen, dass es funzt?

danke,
heiopei
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#4
  Alt 13. Jun 2003, 22:28
Moin Heiopei,

kommt drauf an, ob Du jetzt eine eigene Grafik als Caret einbinden, oder nur eigene Abmessungen festlegen willst.

Im ersten Falle z.B.

Delphi-Quellcode:
CreateCaret(Memo1.Handle,0,10,10);
ShowCaret(Memo1.Handle);
Das sollte einen "schönen" 10x10 Pixel grossen schwarzen Würfel ergeben.

Soll es eine eigene Grafik werden, brauchst Du erst einmal eine Bitmap, die als Resource in's Programm eingebunden wird (vielleicht geht's auch mit einer externen Datei)

Dazu brauchst Du eine Datei in der die Zeile

CARET BITMAP <Pfad zur Bitmapdatei>

steht.
Die kannst Du dann mit der BRCC32.EXE (Delphi\Bin Verzeichnis) in eine RES Datei umwandeln.

Delphi-Quellcode:
var
  hCaret : HBITMAP;

begin
  hCaret := LoadBitmap(hInstance,'CARET');
  CreateCaret(Memo1.Handle,hCaret,0,0);
  ShowCaret(Memo1.Handle);
end;
Da hier die Grösse nicht berücksichtigt wird spielt es keine Rolle welche Abmessungen Du angibst, es werden die der Bitmap genommen.
Das Caret kann dann auch farbig sein.
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
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 07:00 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