How can I hide the name of the variable related to a list box
Some options
Setting the text in the layout overrides the default
layout.prop(scene, 'tgt_arm', text=&quot;&quot;)

which by default displays the name of the property
bpy.types.Scene.tgt_arm = bpy.props.EnumProperty(
        name=&quot;Target&quot;,
        items=MainPanel.armatures_items)

which when not set defaults to the property name, in this case &quot;tgt_arm&quot;
Polled object pointer.

Would suggest instead of an enum use a pointer to the armature object itself.
As explained in https://blender.stackexchange.com/a/101301/15543 can poll them.
Example code:
import bpy
from bpy.props import *

def armature_poll(self, object):
    return object.type == 'ARMATURE'

class MainPanel(bpy.types.Panel):
    bl_idname = &quot;armature.retarget&quot;
    bl_label = &quot;Armature retarget&quot;
    bl_space_type = &quot;VIEW_3D&quot;
    bl_region_type = &quot;UI&quot;
    bl_category = 'View'

    def draw(self, context):
        scene = context.scene
        layout = self.layout
        layout.prop(scene, 'tgt_arm', text=&quot;&quot;)
   
   
    def armatures_items(self, context):
        obs = []
        for ob in context.scene.objects:
            if ob.type == 'ARMATURE':
                obs.append((ob.name, ob.name, &quot;&quot;))
        return obs
    
def register():
    bpy.utils.register_class(MainPanel)

    bpy.types.Scene.tgt_arm = PointerProperty(
            poll=armature_poll,
            type=bpy.types.Object)

def unregister():
    bpy.utils.unregister_class(MainPanel)


if __name__ == &quot;__main__&quot;:
    register()