Results 1 to 2 of 2

Thread: Cursor veranderen in een DBGrid

  1. #1
    Senior Member
    Join Date
    Sep 2001
    Location
    Eindhoven
    Posts
    52

    Question Cursor veranderen in een DBGrid

    Als je binnen een DBGrid cell gegevens invoert, staat er op de positie waar de data wordt ingevoerd een knipperende cursor. Deze cursor zou ik graag willen aanpassen (breder of bold maken).

    Is dit op een of ander manier mogelijk?

    Het resultaat zou moeten worden wat je bereikt als je in design mode via Tools -> Editor Options -> "BRIEF cursor shapes" aanvinkt.
    Maar nu runtime binnen een DBGrid......

    Ik gebruik Delphi 6.

    Roel.

  2. #2
    Het wijzigen van de caret is denk ik best lastig. Ik kan bij torry geen component vinden waar je dit van kunt afkijken. Dus dan zul je moeten beginnen in de Windows API helpfile bij de functie CreateCaret.

    Een eigen editor in een DBGrid maken is niet zo moeilijk. Maak een afgeleide van TCustomDBGrid en overschrijf de protected functie CreateEditor. Maak tevens een afgeleide van TInplaceEdit, of beter kopieer de class TDBGridInplaceEdit uit de DBGrids unit en maak daar een afgeleide van. Geeft een instantie van je eigen editor terug in de CreateEditor van je eigen grid.

    De CreateCaret zul je moeten gebruiken als je een WM_SETFOCUS message krijgt, kijk maar in de windows sdk help bij WM_SETFOCUS. Deze message moet je dus in je eigen afgeleide van TInplaceEdit afvangen, eerst de inherited aanroepen, en dan met CreateCaret de cursor shape wijzigen.

    Succes ermee.

    En laat even weten wanneer je TDBGridWithCustomCaret klaar is
    Marco Hemmes

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •