From what I understand, the data is located within the Xojo application, you then copy this data to the clipboard, then in a browser paste the data into a web form? If this is the case the issue you are running into is that the clipboard stores string data, not keystrokes. It is the actual act of pressing the tab key on the keyboard that moves the cursor from field to field. I can think of a few ways to accomplish what you are looking for, keep in mind not all of these are practical.
*) If you control the webpage, add a button or menu on-page that will use javascript to read the clipboard data and populate the web fields.
*) Include an HTMLViewer in your project, load the desired web page, and use the HTMLViewer.ExecuteJavaScript method to populate the web fields, bypassing the need for the clipboard all-together.
*) Inject a javascript into the web page (assuming your browser supports it) that will read the clipboard data, and using TAB( chr 9) delimiters write out the data into each web field. This method gets complicated if your input data has any TAB chars in it.
*) Depending on platform, write system calls that will send simulated keystrokes into the browser application to ‘type’ out the data. This one I do not recommend as it can get messy and complicated if your not familiar with the system calls and permission issues that come with simulated keystrokes. I only include it as an example for completeness.
The best choice would be if you control the webpage, but for the time I am going to assume you do not. The method I recommend is the HTMLViewer. You can do direct assignment with the ExecuteJavaScript method, with the prerequisite of knowing the id’s of the web fields.
Example with Google:
Create a project with an HTMLViewer, two buttons, and a TextField. I named the HTMLViewer “htmPage”, and the TextField “txtInput”
Create a method:
Sub SetHTMLPageFieldValue(FieldName As String, Value As String)
htmPage.ExecuteJavaScript("document.getElementById('"+FieldName+"').value='"+Value+"'")
End Sub
In the first, load, button use the code
htmPage.LoadURL("http://www.google.com")
In the second, inject, button use the code
SetHTMLPageFieldValue("lst-ib",txtInput.Text)
*) Run the Xojo app
*) Press the load button
*) Press the inject button
As I mentioned, you will need the id’s of the web fields in order to do this method. If you need help doing this just let me know what the page is(if its public), and what your browser is.