Solved

Dynamically loaded ActiveX Control can't be enabled

Posted on 2001-07-25
6
303 Views
Last Modified: 2008-02-01
Hi,

I have an app consisting of a user interface layer, (a series of forms in a standard VB project), a business logic layer, (a series of classes/modules in an ActiveX dll project), and additional user interface controls I have designed myself, (in an ActiveX control project).

The three projects are under development and hence have not been compiled. I am running them as a group project with relevent references defined where necessary.

The ActiveX controls are loaded dynamically at run time, i.e. only when required. (The user accesses one of a number of functions and the relevant screen is loaded as an ActiveX control as a result).

Initially this worked fine but I have done something that prevents the dynamically loaded control from being enabled!!!

The actual code for loading the control hasn't been touched - any clues - is it a project reference/component/properties issue?

Here is the routine for loading the activeX control.

****At top of form code*****
' Used to allow dynamic load of user controls
Private WithEvents FL3IF As VBControlExtender
Private FL3IFX As Object

***Name of user control passed to  routine in format "projectname.controlname"***

Private Sub Showscreen(UC_Name As String)
' -- Load a user control and show it
   
    On Error Resume Next            ' Tidy Up
    FL3IFX.CloseModule
    Me.Controls.Remove "DATA"
    Set FL3IFX = Nothing
    Set FL3IF = Nothing
   
    Set FL3IF = Me.Controls.Add(UC_Name, "DATA")
   
    Set FL3IF.Container = fmeX   ' A frame on main form
 
    With FL3IF
        .Top = 0
        .Left = 0
        .Height = fmeX.Height
        .Width = fmeX.Width
        Set FL3IFX = .object
       
        .Visible = True
        .Enabled = True    ' ****doesn't work!!!!!****
    End With

End Sub


 



 
0
Comment
Question by:G_Evans
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
6 Comments
 
LVL 4

Expert Comment

by:vindevogel
ID: 6316683
Suggestion: Remove the ON ERROR RESUME NEXT and see where it goes wrong (it'll go wrong on the remove too, but just skip that during debugging)

The ON ... prevents you from seeing the correct error.  See what comes out of it.
0
 
LVL 22

Expert Comment

by:CJ_S
ID: 6316768
Does the property enabled exist?

Also try to move only the enabled property outside the with statement.

regards,
CJ
0
 
LVL 22

Expert Comment

by:CJ_S
ID: 6316769
What exactly is the error btw?
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 8

Accepted Solution

by:
Dave_Greene earned 200 total points
ID: 6316858
Probably a silly question but is "fmeX" - frame enabled?
0
 

Author Comment

by:G_Evans
ID: 6316879
Sorry to waste your time lads, (&/or lasses).

I had somehow set the frame enabled property to 'false'!

I will return to work, tail firmly between legs!!!!!!

(For the record the .enabled property of the FL3IF object was not a supported one, this was being masked by the error handling - cheers!)
0
 
LVL 8

Expert Comment

by:Dave_Greene
ID: 6316886
That was my second question. Glad you got it working...  the frustration is over.. I love it when that happens  :)

Cheers mate!
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I’ve seen a number of people looking for examples of how to access web services from VB6.  I’ve been using a test harness I built in VB6 (using many resources I found online) that I use for small projects to work out how to communicate with web serv…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

695 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question