We help IT Professionals succeed at work.

inplace-editor of TDBGrid

alsan
alsan asked
on
Medium Priority
624 Views
Last Modified: 2010-04-04
I'm trying to write an enhanced version of TDBGrid, called TEDBGrid.  One of key features is that display a bitmap when Boolean field for True and another bitmap for False, and toggle it's value through space.  I can display bitmaps, toggle values by keypress successfully, but it will display the textual True or False before my drawing.  This is due to the inplace-edit object of the parent class, and this object is encapslated, so I can't access it directly.  Unfortunately, the inplace-editor is needed to commit my data change by emulate a Enter key.

So, my question is how to make the inplace-editor  respon to my key press and bypass the screen redraw?
Comment
Watch Question

Commented:
If you need to access TInplaceEdit, you must override TCustomGrid.CreateEditor, and do something like this:

function TEDBGrid.CreateEditor: TInplaceEdit;
begin
  FAnotherPointerToEditor := inherited CreateEditor;
  Result := FAnotherPointerToEditor;
end;


You could ofcourse also create a descendant of TInplaceEdit in CreateEditor and return that, giving you all the control of the editor you need.


Regards, Erik.



Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts

Author

Commented:
Thanks a lot for your answer.  I'll try it as you say.

Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.