/usr/share/qt3/doc/html/qaxcontainer-example-webbrowser.html is in qt3-doc 3:3.3.8-b-8ubuntu3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/extensions/activeqt/examples/webbrowser/webbrowser.doc:1 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>A Web Browser</title>
<style type="text/css"><!--
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
--></style>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
<a href="index.html">
<font color="#004faf">Home</font></a>
| <a href="classes.html">
<font color="#004faf">All Classes</font></a>
| <a href="mainclasses.html">
<font color="#004faf">Main Classes</font></a>
| <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
| <a href="groups.html">
<font color="#004faf">Grouped Classes</font></a>
| <a href="functions.html">
<font color="#004faf">Functions</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>A Web Browser</h1>
This example utilizes the Microsoft Web Browser ActiveX control
to implement a fully functional Web Browser application. The
user interface has been developed using the Qt Designer
integration of the <a href="qaxwidget.html">QAxWidget</a> class.
<p> The code demonstrates how the Qt application can communicate
with the embedded ActiveX controls using signals, slots and the
dynamicCall() function. Most signal and slot connections have
already been set up within Qt Designer.
<p>
<pre> void MainWindow::init()
{
pb = new <a href="qprogressbar.html">QProgressBar</a>( statusBar() );
<a name="x2513"></a> pb-><a href="qprogressbar.html#setPercentageVisible">setPercentageVisible</a>( FALSE );
<a name="x2516"></a> pb-><a href="qwidget.html#hide">hide</a>();
statusBar()->addWidget( pb, 0, TRUE );
connect( WebBrowser, SIGNAL(ProgressChange(int,int)), this, SLOT(setProgress(int,int)) );
connect( WebBrowser, SIGNAL(StatusTextChange(const <a href="qstring.html">QString</a>&)), statusBar(), SLOT(message(const <a href="qstring.html">QString</a>&)) );
WebBrowser->dynamicCall( "GoHome()" );
}
</pre>The init() function is implemented to create a progress bar as
the child of the status bar, and to connect Internet Explorer's
<tt>ProgressChange()</tt> and <tt>StatusTextChange()</tt> signals to the
respective displays.
<p> Finally the <tt>GoHome()</tt> function of Internet Explorer is invoked
using the <a href="qaxbase.html#dynamicCall">QAxBase::dynamicCall</a>() dynamicCall() API.
<p> <pre> void MainWindow::go()
{
actionStop->setEnabled( TRUE );
WebBrowser->dynamicCall( "Navigate(const <a href="qstring.html">QString</a>&)", addressEdit->text() );
}
</pre>The go() function calls the <tt>NavigateTo()</tt> function of Internet
Explorer, passing the text of the address bar as the argument.
<p> <pre> void MainWindow::setTitle( const <a href="qstring.html">QString</a> &title )
{
setCaption( "Qt WebBrowser - " + title );
}
</pre>The setTitle() slot is connected to the TitleChange() signal
of Internet Explorer, and updates the caption of the window
using the provided title string.
<p> <pre> void MainWindow::setProgress( int a, int b )
{
if ( a <= 0 || b <= 0 ) {
pb-><a href="qwidget.html#hide">hide</a>();
return;
}
pb-><a href="qwidget.html#show">show</a>();
<a name="x2515"></a> pb-><a href="qprogressbar.html#setTotalSteps">setTotalSteps</a>( b );
<a name="x2514"></a> pb-><a href="qprogressbar.html#setProgress">setProgress</a>( a );
}
void MainWindow::setCommandState( int cmd, bool on )
{
switch ( cmd ) {
case 1:
actionForward->setEnabled( on );
break;
case 2:
actionBack->setEnabled( on );
break;
}
}
void MainWindow::navigateBegin()
{
actionStop->setEnabled( TRUE );
}
void MainWindow::navigateComplete()
{
actionStop->setEnabled( FALSE );
}
</pre>The setProgress(), setCommandState(), navigateBegin() and
navigateComplete() slots are connected to the respective
signals of Internet Explorer and update the user interface.
<p> The rest of the implementation is not related to <a href="activeqt.html#ActiveQt">ActiveQt</a> and
omitted for brevity.
<p> To build the example you must first build the
<a href="qaxcontainer.html">QAxContainer</a> library.
Then run your make tool in <tt>examples/webbrowser</tt> and
run the resulting <tt>webbrowser.exe</tt>.
<p>See also <a href="qaxcontainer-examples.html">The QAxContainer Examples</a>.
<!-- eof -->
<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright © 2007
<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
<td align=right><div align=right>Qt 3.3.8</div>
</table></div></address></body>
</html>
|