Copy Base ListBox from one form to another

Firebird 3 Database (service - not embedded)

I created a form for a specific table, tailored a series of controls (list boxes and button to execute some calcs).
Added another similar table (with the same column names for some of the columns - the ones bound to the list boxes).

Since the LO Help documentation says that you can copy and paste controls between different “documents”, I did so, copy the controls to a new form to access the new table.

first sign of not working was when setting the “activation order” (tab order in Access nomenclature). If I launch the “Activation Order” dialog while focus is on one of the controls copied in, the dialog only lists the controls copied in. If I launch the “Activation Order” dialog while focus is on one of the controls created by the form wizard for the new form, only the controls from the form wizard are displayed.

Pursuing further, I clicked the “Form” Icon in the “Form Design” Toolbar it shows different information depending on which control is in focus when activating the Form Properties dialog.

It appears that the controls are assigned to a different object. I have not been able to find a GUI method for finding and correcting the problem. I am still learning how to manipulate the LO Basic Object model so after trying for a while to find a way to iterate through the Control properties, I thought I would ask the forum.

Has anyone encountered this issue before and can recommend a fix?

Does anyone have a routine to iterate through the control properties?

I may just delete all the bad controls and build them again in the new form. But if there is a way to copy controls that would be really helpful for developing similar forms.

I appreciate your help.


When copying controls from one form to another it isn’t just the control which is copied but also the internal form as well.

Use Form Navigator (from icon on Form Design toolbar) to assist.

Original form:

Form with controls copied:

You can see that the controls are on a different internal form. In the navigator you can drag them to the correct form. You can then delete the copied internal form. Result (also showing tab activation):

Thank you Ratslinger. You are a very helpful person.
After experimenting with the Form Navigator, I see what you mean. When pasting in a control from another form, it first goes to a new instance of MainForm (if one has not given the form a different name). Then you must DRAG the control in the Navigator to the real form name. When dragging you must hold the mouse cursor in just the right place to get the Navigator to scroll up (too many controls on this form). But when you release it on the correct form name, the object membership is corrected.

This is very helpful for semi custom development.