callback for twebbrowser delphi - delphi

I was wondering how i could make a callback function for the twebbrowser in delphi. I want it to recognize which input or edit box i am clicking in with the mouse..... any ideas?
As requested, hereby the update of the question, the user workflow.
The user would
1. select the inputfield on the twebbrowser by mouse. (the program would see what the information is about this inputfield(value, id, etc.....)
2. fill in the field with prefered information (name, password, whatever really)
At the same time this text is linked back into a memo box. That whould be the start, if i understand this it would be a good beginnning.

Will this code help you?
http://www.delphidabbler.com/articles?article=22&part=4#calling-delphi
The article is about calling Delphi-code from JavaScript.

Related

TDBrichedit displays plain text rather than rich text

The context is that I am maintaining an application running on delphi 7 with the BDE. I programmatically assign dbricheditcontrols' datafields to allow users to edit rtf documents. When the relevant forms open, the unformatted text is displayed and then once say the person moves onto the next document, suddenly the rich text kicks in; I suspect it must be an initialisation problem of sorts, but what am I missing; could not locate a solution online.
Thanks
Ordinarily, I would not post an answer to a q which states
I programmatically assign dbricheditcontrols' datafields to allow users to edit rtf documents
but fails to include the code that you are using - you should have provided an MCVE (see https://stackoverflow.com/help/mcve).
However, what you say sugggests that you may be going about what you are trying to do the wrong way. You say you are using a TDBRichEdit component, but if you are using it correctly, it should not require any programmatic assignment of datafields to do it: you simply need to connect the component to the TTable or TQuery you are using via a TDataSource component, and configure the DBRichEdit to access whatever field of the TTable/TQuery that stores the richedit text. That can be done a design time using the Object Inspector in the IDE to set properties and does not require any code.
So, it seems to me that either you are not using the DBRichEdit correctly, or you are trying to do something that you have not explained in your q.
You can satisfy yourself that a DBRichEdit works automatically, without needing to load or save its contents in code, as follows:
Open the FishFacts demo
Add a TDBNavigator and a TDBRichEdit to the form. Set the DataField property of DBRichEdit1 to Notes.
Set the ReadOnly property of Table1 to False. Then set Table1's Active property to True.
Compile and run the project. While it's running
Start WordPad.Exe and create a bit of richtext in it. Copy it to the clipboard. Click the Save speedbutton of DBNavigator1.
Paste the richtext into DBRichEdit1.
You should find that you can navigate away from and back to the edited record and the richtext will be automatically reloaded.
Also, the following code works fine for me to load the Notes field from an .Rtf file
procedure TForm1.Button1Click(Sender: TObject);
begin
Table1.Edit;
TMemoField(Table1.FieldByName('Notes')).LoadFromFile('D:\test.rtf');
end;
and does not initially display the unformatted text as you describe. So I'm fairly sure you problem is arising in code of yours that you haven't shown us.
Btw, the only reason I am posting this as an "answer" is that there is more to say than will comfortably fit in a comment.

PasswordChar in Delphi XE8's TMemo

I spent a few hours searching Google to see if anyone had shared their articles, but came up empty-handed.
If it's possible, I want to know how to enable/disable the PasswordChar in Delphi XE8's TMemo to hide user input like in TEdit. ? Maybe via a checkbox!
So when the checkbox is checked then all text turned to asterisks, and if the checkbox is unchecked, all text back to normal..
The VCL memo control is a loose wrapper around the Win32 multiline edit. The password character functionality of the edit control is only available for single line edits.
The behaviour is controlled by the ES_PASSWORD style for which the documentation says:
Displays an asterisk (*) for each character typed into the edit control. This style is valid only for single-line edit controls.
The FMX memo control offers no password character functionality for the multiline memo control.
Presumably these frameworks don't offer what you want because passwords are entered in single line edit controls. Developers tend not to provide functionality that has no clear case for being used.
Your options:
Use a single line TEdit.
Write your own multiline memo that supports your desired functionality.
Find a third party multiline memo that supports your desired functionality.
Now, since your question is so general I have assumed that you want full support for single line password character. That is, the user enters text and it appears masked.
But maybe you actually don't need editability. In that case it is simple enough. Do the following:
Load or add the true text into a separate TStringList.
When you want to display the true text assign the string list to the memo.
When you want to hide the content, process the true text into whatever you want to display, and display that.
Make the memo control read only.
if cBoxPassword.checked=false then
edtpassword.PasswordChar:='*';
if cBoxPassword.checked=true then
edtPassword.PasswordChar:=#0;

How to preselect capslock in TouchKeyboard component

I am working with Delphi TTouchKeyboard component. Because in later use people will mainly use capital letters, I would like to preselect capslock.
My problem now is, that the Touchkeyboard only changes its key caption when I click directly on a key. If the state is toggled by an (external) keydown message, one can use capital letters, but the keyboard component will still dislpay small letters on the keys. How could I solve that?
As far as I can see the only work arround is to edit the original source code.
http://qc.embarcadero.com/wc/qcmain.aspx?d=88770 (I haven't tested it)
I've tried to write a patch with this code but with out any luck because I can not acces the private field Fbuttons.
So if you want this you'll have to patch the original code

Add alternative text to a phrase in a document file

I use LibreOffice Writer and I want to insert an alternative text to a specific phrase in the document, how can I do it?
Example if we have an image in the document we can make double left click and add the alternative text like this:
Is it possible to make the same if we select a whole phrase of text? If yes how? And if No is there any other proposal?
The alternative text in 'word'/odt documents is actually intended as the 'alt' attribute in HTML (web) pages:
The alt attribute provides alternative information for an image if a
user for some reason cannot view it (because of slow connection, an
error in the src attribute, or if the user uses a screen reader).
(http://www.w3schools.com/tags/att_img_alt.asp)
It's only purpuse is thus to provide the user with information in case he/she can not view the image. Since having alternative text in case some text cannot be displayed is, well, silly, this 'alt' attribute is not defined for pieces of text. Alternatively, you could have a hyperlink pointing to nothing ("#"), which does provide a tooltip attribute.
What is it that you're intending to achieve anyway? It's not going to show up on any prints, which is the intended purpose of Writer... Footnotes (for prints) or Comments (for communication with co-editors) might suit you better.

Sharepoint 2007 get link to items in a custom form

I have a SharePoint Server 2007 installation. What I needed to do is to create a simple printable page/file which is populated with data from a list. For various bugs and reasons I can't do this with a word template in a word document library and I can't use workflows.
My solution so far is very rude and simple, but it gets the jobs done:
I created a new custom form called print.aspx
I insert a Custom List Form based on the display form.
Successfully pasted the text, put the data fields and added a couple of text fields for additional data that is required in the print form but not on the list item.
This print.aspx custom form won't save anything and it is not required.
Now what I want to do is place a link in the customized DispForm.aspx that leads to the printing page so when the user enters the list item and it is approved they can click to see it. At the bottom of the DispForm.aspx there will be a simple link to print.aspx saying "To print this click here". Unfortunately I have no idea how to link to the ID of the item in print.aspx.
Example:
In InternalPortal/Lists/ImportantList/DispForm.aspx?ID=5 I want the link to point to InternalPortal/Lists/ImportantList/print.aspx?ID=5
Already tried ID={#ID} and ID=item.ID but to be honest and not sure how to use them.
Edit: In summary - the link ends in ID={#ID} but it should be in the DataFormWebPart. This will not work outside of it.

Resources