Solved

TStringGrid.OnKeyDown event not working

Posted on 2008-10-30
1
980 Views
Last Modified: 2013-11-12
Hi.

I have a very strange behavior with OnKeyDown event for a TStringGrid control.

I have a heavily modified control derived from TStringGrid. In this control I intercept the "key down" in order to delete the selected cell(s) when the user presses the Delete key on his keyboard.
It worked until recently when I discovered that pressing the Delete key does nothing.


STRANGE is that if I put a break point at the beginning of the procedure, the programs step through code and the program works (the code is executed). After this "glitch" is overpass first time, then the program will always work ok.

There is a trick that will do the work: I need to click (focus) another control on the same form where my grid is placed then to return (click) to the grid. After this, the Delete key is working.

Any ideas?



procedure TMyGrid.KeyDown(var Key: Word; Shift: TShiftState);
begin                                                                
 case Key of                        <--- if I pub breakpoint here it works !!!!!!!
   VK_LEFT  : if CursorPos-1 > 0 then
               begin
                  ...
               end;
   VK_DELETE: begin
               inherited KeyDown(Key, Shift);
               DeleteCells(Row);
               Bip30;
              end;
   VK_Up    : begin
                      ...
                    end;

  else inherited KeyDown(Key, Shift);
 end;
end;

PS: VK_Left, VK_Up, etc behave in the same way as VK_delete.
0
Comment
Question by:fedra
1 Comment
 

Accepted Solution

by:
fedra earned 0 total points
ID: 22842200
Fixed. I accidentally set the focus on a different control. So even if the grid had the cursor on it, the focus was on a different control.
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This is an explanation of a simple data model to help parse a JSON feed
When there is a disconnect between the intentions of their creator and the recipient, when algorithms go awry, they can have disastrous consequences.
In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question