Get UI Panel row value from Custom UI Panel

Hello!
I have been trying for hours to find how to create a Interger operator and be able to get its value when clicking on another button.

This is my code right now:

import bpy
#from bpy.types import Panel


#----------------------------------------------------------------Exporting-------------------------------------------------------------------

class LifeRoad_PT_Panel():
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"
    bl_label = "LifeRoad"
    bl_category = "LifeRoad"
    
    
class SUB_PT_Exporting(LifeRoad_PT_Panel, bpy.types.Panel):
    bl_label = "Render"
    bl_idname = "SUB_PT_Exporting"
    bl_option = {"DEFAULT_CLOSED"}
    
    def draw(self, context):
        
        layout = self.layout
        scene = context.scene

        row = layout.row()
        row.label(text="Export folder:")

        row = layout.row()
        row.prop(context.scene, "export_folder", text="")
                    
        #Render Resolution
        row = layout.row()
        row.label(text="Export Resolution;")
        row = layout.row()
        row.prop(context.scene, "export_folder", text="")
        
        # Render an Image Button Calling its specific class
        row = layout.row()
        row.operator("object.renderimage", text = 'Render Image', icon="MOD_SMOOTH")

#-----Button Render Image
class OBJECT_OT_renderimage(bpy.types.Operator):
    
    """Render image from the camera"""
    bl_idname = "object.renderimage"   #This is used for the row.operator butto
    bl_label = "Invokes a Script"

    #Execute this function when the button is clicked
    def execute(self, context):

        print(????????)
        return {'FINISHED'}           
        
#All the Panel Name that will be used in the loops of register and unregister
classes = (
    SUB_PT_Exporting,
    OBJECT_OT_createcamera,
    OBJECT_OT_rendermodemesh,
    OBJECT_OT_rendermodeflat,
    OBJECT_OT_renderimage
)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
                    
def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
        
if __name__ == "__main__":
    register()

Does anyone know how to do this?
I tried looking at the Blender API but I have hard issue understanding it. I only know the base of programming.

Does Blender have a page like this?
MaxScrip Doucumentation Example
I ask because that would make it easier to create Custom Panels.

Thank you in advance for you help and have a nice day! :slight_smile:

Well I found how to get the value of the Export Folder row.props with this line:

context.scene.export_folder

Still looking to find how to make a dropdownlist and a number input zone in my panel.

I got my answer from this site:

Here is the code test given to me:

> bl_info = {
>     "name": "Test Addon",
>     "author": "Me myself and I",
>     "version": (0, 0, 1),
>     "blender": (2, 80, 0),
>     "location": "View3D > UI > MY TEST",
>     "description": "This is a test UI addon",
>     "warning": "",
>     "doc_url": "",
>     "category": "3D View",
> }
> 
> 
> import bpy
> from bpy.types import Panel, PropertyGroup, Scene, WindowManager
> from bpy.props import (
>     IntProperty,
>     EnumProperty,
>     PointerProperty,
> )
> 
> class MYTEST_PT_Panel(Panel):
>     bl_idname = "MYTEST_PT_Panel"
>     bl_label = "MY UI"
>     bl_space_type = "VIEW_3D"
>     bl_region_type = "UI"
>     bl_category = "MY TEST"
>     bl_options = {'DEFAULT_CLOSED'}
> 
>     def draw(self, context):
>         layout = self.layout
>         placeholder = context.scene.placeholder
>         col = layout.column()
>         col.prop(placeholder, "inc_dec_int", text="Increment/Decrease")
>         col.prop(placeholder, "dropdown_box", text="Dropdown")
> 
> 
> class PlaceholderProperties(PropertyGroup):
>     inc_dec_int: IntProperty(
>         name="Incr-Decr", min=1, default=4, description="Tooltip for Incr-Decr"
>     )
>     dropdown_box: EnumProperty(
>         items=(
>             ("A", "Ahh", "Tooltip for A"),
>             ("B", "Be", "Tooltip for A"),
>             ("C", "Ce", "Tooltip for A"),
>         ),
>         name="Description for the Elements",
>         default="A",
>         description="Tooltip for the Dropdownbox",
>     )
> 
> classes = (
>     PlaceholderProperties,
>     MYTEST_PT_Panel,
> )
> 
> def register():
>     #the usual registration...
>     from bpy.utils import register_class
> 
>     for cls in classes:
>         register_class(cls)
> 
>     Scene.placeholder = PointerProperty(type=PlaceholderProperties)
> 
> def unregister():
>     #the usual unregistration in reverse order ...
> 
>     from bpy.utils import unregister_class
>     for cls in reversed(classes):
>         unregister_class(cls)
> 
>     del Scene.placeholder
> 
> if __name__ == "__main__":
>     register()
> ```