Feedback
Did this article resolve your question/issue?

   

Article

How to load an iframe into an OCX control implementing a web browser.

Information

 
TitleHow to load an iframe into an OCX control implementing a web browser.
URL NameHow-to-load-an-iframe-into-an-OCX-control-implementing-a-web-browser
Article Number000112608
EnvironmentProduct: OpenEdge
Version: 11.7.x
OS: Windows
Other: AppBuilder







OpenEdge-OEDK Premier Edition-Windows-Win 7
Question/Problem Description
Imagine a form built, using the AppBuilder. Further imagine the form is to include a web browser, implemented using an OCX control. The web page is to be an iframe containing some information. 
Steps to Reproduce
Clarifying Information
Error Message
Defect/Enhancement Number
Cause
Resolution
As described in HTML iFrame (https://www.tutorialrepublic.com/html-tutorial/html-iframes.php) An iframe or inline frame is used to display external objects including other web pages within a web page. The HTML for implementing an iframe looks like the following:
<iframe src="the URL">
text to be displayed on browsers that do not support iframe
</iframe>

There are two parts to these instructions, creating the AppBuilder code and creating the HTML.
Creating the AppBuilder code:
1) Start the AppBuilder (Start->Progress->OpenEdge->AppBuilder)
2) Create a window (File->New->Window), the window appears.
3) Add the OCX control to the window
3a) Click the OCX control icon on the pallette

Shows the OCX icon on the pallette
3b) The choose Control window appears

Shows the Choose Control window

3c) Select the Microsoft Web Browser control (C:\Windows\SysWOW64\iframe)
3d) Click OK
4) Place the control onto the window.
5) The name of the object (Web Browser) is needed.
5a) Click the edit code icon on the toolbar.

Shows the edit code icon on the toolbar

5b) The Section editor appears, set the section to the section of code where the web browser control will be referenced.
5c) Click the insert menu item

Shows the Insert button of the Section Editor page.

5d) Click the Object Name... menu item

Shows the Object Name menu item of the Insert menu list.

5e) The Code References page appears. In this case the object needed is chCtrlFrame:WebBrowser

Shows the Code References page with the web browser object.

5f) In a small test case, select Main Block. Find where Run enable_UI is located, place the cursor on the line just 
after Run enable_UI and click the insert button on the Code References page, after selecting the web browser object. This inserts the 
object name into the code.
5g) Add the Navigate method to the object and the HTML file or URL that the web browser should open.

Shows the object reference added to code.

6) The web page with the iframe looks like the following:

Shows the results of running the code


:
Creating the HTML code:
The following is the HTML code that is included in the iframe. For test purposes it is located at C:\simplepage.html

 
<html>
<head><title>Test page</title></head>
<body>
Simple HTML file
<br>
For testing iframe
</body>
</html>

The HTML code that creates the iframe and includes simplepage.html is as follows:
 
<html>
<head>
<title>iframe page</title>
</head>
<iframe src="C:\simplepage.html"></iframe>
</html>







 
Workaround
Notes
References to other documentation:

Programming Interfaces: External Program Interfaces: ActiveX Control Support: Programming ActiveX controls in the AppBuilder:
https://documentation.progress.com/output/ua/OpenEdge_latest/index.html#page/dvpin%2Fprogramming-activex-controls-in-the-appbuilder.html%23

Online Help: Introducing the ABL GUI Designer: Reference: Object Palette: Types of objects: ActiveX objects:
https://documentation.progress.com/output/ua/OpenEdge_latest/index.html#page/pdsoe/activex-objects.html

Webspeed Essentials: Tools and ABL Support: AppBuilder:
https://documentation.progress.com/output/ua/OpenEdge_latest/index.html#page/gswsp/appbuilder.html

HTML iFrame:
https://www.tutorialrepublic.com/html-tutorial/html-iframes.php
Last Modified Date1/15/2019 1:36 PM
Attachment 
Files
Disclaimer The origins of the information on this site may be internal or external to Progress Software Corporation (“Progress”). Progress Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.

Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on an "AS IS" basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation, the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if Progress has been advised of the possibility of such damages.