Link to home
Start Free TrialLog in
Avatar of jnowlin
jnowlin

asked on

Web Browser Control Question

Hi.

I need some help clarifying the events associated with VB 6's Web Browser control. I have one, on a Form. This Form has a menu of its own and one of the top menu selections is "Favorites". The browser has basic back and forward buttons as you're probably aware.

My home button is coded for www.cnn.com. When I click on that, I get CNN online. I click around on the Favorites and work the browser to test it. There is one noticeable problem with the address bar - it doesn't always correctly display the URL. If I'm at one of my Favorites and I click the Home button, the last site I visited remains in the address bar.

What event do I need to check code on th get this browser to work as one would expect it to work (just like IE)?

Also, is there a way to add a history feature to this control?

Jim
ASKER CERTIFIED SOLUTION
Avatar of AzraSound
AzraSound
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
>>Also, is there a way to add a history feature to this control?

You could probably maintain this quite simply with an array
Avatar of jnowlin
jnowlin

ASKER

I wrote the Sub as you suggested but it didn't work. It looked as though it was an event associated with the browser control. I replaced txtURL.Text with my address bar control, which is cboAddress.Text.

Wait...
My control is named differently - I think it's brwBrowser.
So, do I understand correctly that your above code should work if I rename-
WebBrowser_DocumentComplete
to brwBrowser_DocumentComplete, it should then work?

I remember having this braincramp before. What you've suggested above sounds as if it's associated with one of this control's objects.

?
JimNowlin

Jim

Yes, the control has a DocumentComplete event that you should be able to see in the dropdown box listing the control's events in the code window of the VB IDE.
Avatar of jnowlin

ASKER

I got it this time AzraSound! In the process, I ran into another, more serious problem. This app crashes when I minimize the Form that the brwBrowser control is on with a run-time error 380: Invalid Property Value.
Which property? Since I minimize the Form and that's where there's a property incorrectly set. The border style is set to sizeable...
The Form has a maximize, minimize and restore in the upper right corner...
???
What code do you have, if any, in your form's Resize event?
Avatar of jnowlin

ASKER

Hi AzraSound,

This is what't contained in my Form's Resize event:

Private Sub Form_Resize()
    cboAddress.Width = Me.ScaleWidth - 100
    brwWebBrowser.Width = Me.ScaleWidth - 100
    brwWebBrowser.Height = Me.ScaleHeight -   (picAddress.Top + picAddress.Height) - 100
End Sub

This Form came with VB as a template. I don't understand why there is a PictureBox contained within a ComboBox. Yet, it's there. The ScaleMode is set to twip. I've never altered any of these properties.

Jim
Either add:

On Error Resume Next

at the top of the resize event, or do:

If Me.WindowState = vbMinimized Then Exit Sub

at the top of the resize event.
Avatar of jnowlin

ASKER

I tried both lines of code separately at the top of the Form's ReSize event and the program still crashes when the Form is minimized. "Invalid Property Value" - error 380

I wish this error msgbox would tell me more.

Should I try to trap this error, as in:

If Err.Number = 380 Then Exit Sub

??

I don't know what property of what object/control is set wrong or invalid. The application compiles without issuing any compile-time errors.
I suppose I could copy the code and remove this Form and add a new web browser Form. It's another option.

Bizarre.
Jim
Avatar of jnowlin

ASKER

Hold on...

It works. I was working with an older version of the app.
I'm sorry.
Avatar of jnowlin

ASKER

Thanks once again AzraSound.
I still would have liked to know which proerty on which control was invalid.

I'm off to pose the next question.

Jim Nowlin