Cita:
Empezado por Neftali
Deberías explicar bien cómo estás creando el nuevo menú y añadiendo los elementos; Es posible que con un simple Show ya te active un formulario que está abierto.
|
Muchas gracias por tu interés.
Pues el PopupMenu lo creo en tiempo de diseño. Es un PopUp normal y corriente.
Código Delphi
[-]
object PMMain: TPopupMenu
Images = DM_Main.Activas
Left = 142
Top = 299
object Madera2: TMenuItem
Action = AM_MMaderas
end
object Tornilleria2: TMenuItem
Caption = '&Tornilleria'
Hint = 'Gestión de Tornilleria'
object Tornilleria3: TMenuItem
Action = AM_MTornillerias
end
object Expo2: TMenuItem
Action = AM_ExtraTornillerias
end
end
object N51: TMenuItem
Caption = '-'
end
object PMMain_Ventanas: TMenuItem
Caption = 'Ventanas'
Visible = False
object Cascada2: TMenuItem
Action = WindowCascade1
end
object Horizontal1: TMenuItem
Action = WindowTileHorizontal1
end
object Vertical1: TMenuItem
Action = WindowTileVertical1
end
object Minimizar1: TMenuItem
Action = WindowMinimizeAll1
end
object Cerrar2: TMenuItem
Action = WindowClose1
end
end
object N10: TMenuItem
Caption = '-'
end
object Salir2: TMenuItem
Action = ASalir
end
end
Como se puede apreciar PMMain_Ventanas es del tipo TMenuItem, que es el que requiere la propiedad WindowMenu del form principal.
El PopUp está asignado a la propiedad PopUpMenu del mismo form.
Como se puede apreciar, en el menu PMMain_Ventanas tengo asignados los items característicos del menu Ventanas (Cascade, Horizontal, Minimize..).
El funcionamiento visual es correcto. Es decir, si no he abierto ningún form hijo, los items de este menú (Cascade...) permanecen desactivados al desplegar el popup con el botón de la derecha. Hasta aquí correcto. Si abro algún form hijo (tantos como sean), éstos aparecen en el menú al desplegar el poppup. Es más, aparece clicado el form que se abrió en último lugar.
Es decir, en la parte visual, correcto.
Para más información, si abro algunos forms hijos, los items del menú Cascade, Horizontal, minimize.. funciona correctamente. Todo automático.
Sin embargo, al clicar sobre cualquiera de los items correspondientes a los forms abiertos, no hace nada. Esto es lo que no me funciona.
Por otro lado, no se me ocurre como hacer que se active el form clicado, puesto que al ser items que automáticamente se añaden al abrir los forms no puedo poner ningún evento onclick, porque visualmente aparecen en el menú, pero no forman parte de él.
Siento haberme extendido tanto.
Muchas gracias por todo.