>I'm missing something obvious this morning.
>
>I'm writing an editor-like application for SQL Server stored procs/functions/triggers/etc that displays a grid (stored procs that have a string we searched for) and an editbox that displays the contents of a memo field (the definition of the stored proc selected in the grid).
>
>I want to, from buttons, set focus to the editbox, light up the find (CTRL+F) or replace (CTRL-L) menu and load it with the string we searched for, and have it go to the first occurance in the editbox.
>
>basically..
>
> IF RECCOUNT('curs_sqlroutines')>0
> CLEAR TYPEAHEAD
> thisform.edtRoutine_Definition.SetFocus()
> KEYBOARD '{CTRL+F}'
> KEYBOARD (thisform.csearchstring)
> KEYBOARD '{ENTER}'
> ENDIF
>
>So far, this works unreliably. Many times it doesn't actually open the find dialog and just winds up typing my search string into the editbox.
>
>
>I thought there was a way to just activate the system Find window?
This seems to work on my computer:
thisform.edit1.SetFocus()
IF thisform.edit1.SelStart = 0
KEYBOARD '{CTRL+F}'
IF WExist('Find')=.t.
KEYBOARD 'Adobe'
endif
KEYBOARD '{Alt+N}'
KEYBOARD '{CTRL+W}'
RELEASE WINDOWS Find
endif
If it's not broken, fix it until it is.
My Blog