[{"data":1,"prerenderedAt":1077},["ShallowReactive",2],{"navigation_docs":3,"-archivos-ui-botones":412,"-archivos-ui-botones-surround":1072},[4,18,43,118,160,200,231,320,346],{"title":5,"path":6,"stem":7,"children":8,"icon":17},"Evaluación","\u002Fintroduction","1.introduction\u002F1.index",[9,12],{"title":10,"path":6,"stem":7,"icon":11},"Método de Evaluación","i-iconamoon-cheque-bold",{"title":13,"path":14,"stem":15,"icon":16},"Plataforma de Aprendizaje","\u002Fintroduction\u002Fplataforma","1.introduction\u002F2.plataforma","i-lucide-book-marked","i-lucide-house",{"title":19,"icon":20,"path":21,"stem":22,"children":23,"page":42},"Entorno de desarrollo","i-codicon-edit-code","\u002Fide","2.ide",[24,28,33,37],{"title":25,"path":26,"stem":27,"icon":20},"¿Qué es un IDE?","\u002Fide\u002Fentorno","2.ide\u002F1.entorno",{"title":29,"path":30,"stem":31,"icon":32},"Estructura de un Proyecto","\u002Fide\u002Festructura","2.ide\u002F2.estructura","i-clarity-tree-view-line",{"title":34,"path":35,"stem":36,"icon":20},"La compilación en un IDE","\u002Fide\u002Fcompilacion","2.ide\u002F3.compilacion",{"title":38,"path":39,"stem":40,"icon":41},"Depuración de Código","\u002Fide\u002Fdepurar","2.ide\u002F4.depurar","i-lucide-bug",false,{"title":44,"icon":45,"path":46,"stem":47,"children":48,"page":42},"Clases y Objetos","i-catppuccin-java-class","\u002Fclases-objetos","3.clases-objetos",[49,53,57,62,66,70,74,78,83,88,92,96,101,106,110,114],{"title":50,"path":51,"stem":52},"Repaso previo a Clases y Objetos","\u002Fclases-objetos\u002Fpreview","3.clases-objetos\u002F00.preview",{"title":54,"path":55,"stem":56,"icon":45},"¿Qué es la Programación Orientada a Objetos (POO)?","\u002Fclases-objetos\u002Fpoo","3.clases-objetos\u002F01.poo",{"title":58,"path":59,"stem":60,"icon":61},"Diagramas de Clases y Objetos","\u002Fclases-objetos\u002Fdiagramas","3.clases-objetos\u002F02.diagramas","i-devicon-uml",{"title":63,"path":64,"stem":65,"icon":45},"Las Clases","\u002Fclases-objetos\u002Fclases","3.clases-objetos\u002F03.clases",{"title":67,"path":68,"stem":69,"icon":45},"Ámbito y Visibilidad","\u002Fclases-objetos\u002Fambito","3.clases-objetos\u002F04.ambito",{"title":71,"path":72,"stem":73,"icon":45},"Declaración e Instanciación de Objetos","\u002Fclases-objetos\u002Fobjetos","3.clases-objetos\u002F05.objetos",{"title":75,"path":76,"stem":77,"icon":45},"Clases Predefinidas en Java","\u002Fclases-objetos\u002Fpredefinidas","3.clases-objetos\u002F06.predefinidas",{"title":79,"path":80,"stem":81,"icon":82},"Paquetes en Java","\u002Fclases-objetos\u002Fpaquetes","3.clases-objetos\u002F07.paquetes","i-material-icon-theme-folder-java-open",{"title":84,"path":85,"stem":86,"icon":87},"Las Excepciones","\u002Fclases-objetos\u002Fexcepciones","3.clases-objetos\u002F08.excepciones","i-catppuccin-java-exception",{"title":89,"path":90,"stem":91,"icon":45},"La clase JOptionPane","\u002Fclases-objetos\u002Fjoptionpane","3.clases-objetos\u002F09.joptionpane",{"title":93,"path":94,"stem":95,"icon":45},"Constructores y Accesores","\u002Fclases-objetos\u002Fconstructores","3.clases-objetos\u002F10.constructores",{"title":97,"path":98,"stem":99,"icon":100},"Tipos Enumerados (Enums)","\u002Fclases-objetos\u002Fenumerados","3.clases-objetos\u002F11.enumerados","i-catppuccin-java-enum",{"title":102,"path":103,"stem":104,"icon":105},"Modificadores de acceso static y final","\u002Fclases-objetos\u002Fmodificadores","3.clases-objetos\u002F12.modificadores","i-mdi-chart-box",{"title":107,"path":108,"stem":109,"icon":105},"El casting en Java","\u002Fclases-objetos\u002Fcasting","3.clases-objetos\u002F13.casting",{"title":111,"path":112,"stem":113},"Las Expresiones Regulares","\u002Fclases-objetos\u002Fexpresiones-regulares","3.clases-objetos\u002F14.expresiones-regulares",{"title":115,"path":116,"stem":117,"icon":105},"Clases Genéricas en Java","\u002Fclases-objetos\u002Fclases-genericas","3.clases-objetos\u002F15.clases-genericas",{"title":119,"icon":120,"path":121,"stem":122,"children":123,"page":42},"Funciones (Métodos)","i-material-symbols-function","\u002Fmetodos","4.metodos",[124,128,132,136,140,144,148,152,156],{"title":125,"path":126,"stem":127},"Funciones Genéricas","\u002Fmetodos\u002Ffuncion-generica","4.metodos\u002F01.funcion-generica",{"title":129,"path":130,"stem":131},"Métodos de Instancia y de Clase","\u002Fmetodos\u002Finstancia-clase","4.metodos\u002F02.instancia-clase",{"title":133,"path":134,"stem":135},"Sobrecarga de Funciones","\u002Fmetodos\u002Fsobrecarga","4.metodos\u002F03.sobrecarga",{"title":137,"path":138,"stem":139},"Alcance de Variables y Métodos","\u002Fmetodos\u002Falcance","4.metodos\u002F04.alcance",{"title":141,"path":142,"stem":143},"Recursividad","\u002Fmetodos\u002Frecursividad","4.metodos\u002F05.recursividad",{"title":145,"path":146,"stem":147},"Puntero this","\u002Fmetodos\u002Fthis","4.metodos\u002F06.this",{"title":149,"path":150,"stem":151},"Los argumentos variables (varargs)","\u002Fmetodos\u002Fvarargs","4.metodos\u002F07.varargs",{"title":153,"path":154,"stem":155},"La clase Arrays","\u002Fmetodos\u002Farrays","4.metodos\u002F08.arrays",{"title":157,"path":158,"stem":159},"Predicados Simples y Compuestos en Java","\u002Fmetodos\u002Fpredicados","4.metodos\u002F09.predicados",{"title":161,"path":162,"stem":163,"children":164,"icon":199},"Herencia","\u002Fherencia","5.herencia\u002F01.index",[165,167,171,175,179,183,187,191,195],{"title":166,"path":162,"stem":163},"¿Qué es la herencia?",{"title":168,"path":169,"stem":170},"Sobreescritura de métodos y uso de `super`","\u002Fherencia\u002Fsobeescritura","5.herencia\u002F02.sobeescritura",{"title":172,"path":173,"stem":174},"Tipos de herencia","\u002Fherencia\u002Ftipos-herencia","5.herencia\u002F03.tipos-herencia",{"title":176,"path":177,"stem":178},"La clase Object en Java","\u002Fherencia\u002Fobject","5.herencia\u002F04.object",{"title":180,"path":181,"stem":182},"Polimorfismo","\u002Fherencia\u002Fpolimorfismo","5.herencia\u002F05.polimorfismo",{"title":184,"path":185,"stem":186},"Clases y Funciones Abstractas","\u002Fherencia\u002Fabstract","5.herencia\u002F06.abstract",{"title":188,"path":189,"stem":190},"Interfaces","\u002Fherencia\u002Finterfaces","5.herencia\u002F07.interfaces",{"title":192,"path":193,"stem":194},"Funciones e Interfaces","\u002Fherencia\u002Ffunciones-interfaces","5.herencia\u002F08.funciones-interfaces",{"title":196,"path":197,"stem":198},"Interfaces y Funciones Lambda","\u002Fherencia\u002Flambda-interface","5.herencia\u002F09.lambda-interface","i-material-symbols-heritage",{"title":201,"path":202,"stem":203,"children":204,"icon":199},"Arreglos","\u002Farreglos","6.arreglos\u002F01.index",[205,207,211,215,219,223,227],{"title":206,"path":202,"stem":203},"Los arreglos en Java",{"title":208,"path":209,"stem":210},"Los arreglos","\u002Farreglos\u002Farray","6.arreglos\u002F02.array",{"title":212,"path":213,"stem":214},"Matrices","\u002Farreglos\u002Fmatrices","6.arreglos\u002F03.matrices",{"title":216,"path":217,"stem":218},"Comparadores","\u002Farreglos\u002Fcomparator","6.arreglos\u002F04.comparator",{"title":220,"path":221,"stem":222},"Arreglos dinámicos: ArrayList","\u002Farreglos\u002Farraylist","6.arreglos\u002F05.arraylist",{"title":224,"path":225,"stem":226},"Arreglos Relacionales: HashMap","\u002Farreglos\u002Fhashmap","6.arreglos\u002F06.hashmap",{"title":228,"path":229,"stem":230},"La clase Stream en Java","\u002Farreglos\u002Fstream","6.arreglos\u002F07.stream",{"title":232,"icon":199,"path":233,"stem":234,"children":235,"page":42},"Archivos e Interfaz de Usuario","\u002Farchivos-ui","7.archivos-ui",[236,240,244,248,252,256,260,264,268,272,276,280,284,288,292,296,300,304,308,312,316],{"title":237,"path":238,"stem":239},"El paquete Swing","\u002Farchivos-ui\u002Fswing","7.archivos-ui\u002F01.swing",{"title":241,"path":242,"stem":243},"La clase JFrame y el JPanel","\u002Farchivos-ui\u002Fjpanel","7.archivos-ui\u002F02.jpanel",{"title":245,"path":246,"stem":247},"Los Layouts en Swing","\u002Farchivos-ui\u002Flayout","7.archivos-ui\u002F03.layout",{"title":249,"path":250,"stem":251},"Iniciando con Swing","\u002Farchivos-ui\u002Finiciando","7.archivos-ui\u002F04.iniciando",{"title":253,"path":254,"stem":255},"Las clases Color y Font en Swing","\u002Farchivos-ui\u002Fcolor-font","7.archivos-ui\u002F05.color-font",{"title":257,"path":258,"stem":259},"Etiquetas en Swing","\u002Farchivos-ui\u002Fetiquetas","7.archivos-ui\u002F06.etiquetas",{"title":261,"path":262,"stem":263},"Personalizando la apariencia de los componentes en Swing","\u002Farchivos-ui\u002Fpersonalizando","7.archivos-ui\u002F07.personalizando",{"title":265,"path":266,"stem":267},"Sobrescribiendo el método drawComponent() en Swing","\u002Farchivos-ui\u002Fdraw","7.archivos-ui\u002F08.draw",{"title":269,"path":270,"stem":271},"Manejando eventos en Swing","\u002Farchivos-ui\u002Feventos","7.archivos-ui\u002F09.eventos",{"title":273,"path":274,"stem":275},"Personalización de Componentes mediante la Extensión de Clases en Swing","\u002Farchivos-ui\u002Fextends-component","7.archivos-ui\u002F10.extends-component",{"title":277,"path":278,"stem":279},"Gradientes","\u002Farchivos-ui\u002Fgradientes","7.archivos-ui\u002F11.gradientes",{"title":281,"path":282,"stem":283},"Botones en Swing","\u002Farchivos-ui\u002Fbotones","7.archivos-ui\u002F12.botones",{"title":285,"path":286,"stem":287},"Los delegadores en Swing","\u002Farchivos-ui\u002Fdelegadores","7.archivos-ui\u002F13.delegadores",{"title":289,"path":290,"stem":291},"UI para nuestro RPG: Parte 1","\u002Farchivos-ui\u002Frpg-ui-1","7.archivos-ui\u002F14.rpg-ui-1",{"title":293,"path":294,"stem":295},"UI para nuestro RPG: Parte 2","\u002Farchivos-ui\u002Frpg-ui-2","7.archivos-ui\u002F15.rpg-ui-2",{"title":297,"path":298,"stem":299},"Los Streams Entrada y Salida","\u002Farchivos-ui\u002Fstreams","7.archivos-ui\u002F16.streams",{"title":301,"path":302,"stem":303},"Archivo tipo Objeto","\u002Farchivos-ui\u002Farchivo-objeto","7.archivos-ui\u002F17.archivo-objeto",{"title":305,"path":306,"stem":307},"UI para nuestro RPG: Parte 3","\u002Farchivos-ui\u002Frpg-ui-3","7.archivos-ui\u002F18.rpg-ui-3",{"title":309,"path":310,"stem":311},"UI para nuestro RPG: Parte 4","\u002Farchivos-ui\u002Frpg-ui-4","7.archivos-ui\u002F19.rpg-ui-4",{"title":313,"path":314,"stem":315},"UI para nuestro RPG: Parte 5","\u002Farchivos-ui\u002Frpg-ui-5","7.archivos-ui\u002F20.rpg-ui-5",{"title":317,"path":318,"stem":319},"UI para nuestro RPG: Parte 6","\u002Farchivos-ui\u002Frpg-ui-6","7.archivos-ui\u002F21.rpg-ui-6",{"title":321,"icon":322,"path":323,"stem":324,"children":325,"page":42},"Ejemplos","i-check-circle","\u002Fejemplos","8.ejemplos",[326,330,334,338,342],{"title":327,"path":328,"stem":329,"icon":105},"Ejemplo 1: Validando entradas con JOptionPane","\u002Fejemplos\u002Fejemplo-01","8.ejemplos\u002F01.ejemplo-01",{"title":331,"path":332,"stem":333},"Ejemplo 02: Uso de clases genéricas en Java","\u002Fejemplos\u002Fejemplo-02","8.ejemplos\u002F02.ejemplo-02",{"title":335,"path":336,"stem":337},"Ejemplo 03: Uso de Enum, Excepciones en Java","\u002Fejemplos\u002Fejemplo-03","8.ejemplos\u002F03.ejemplo-03",{"title":339,"path":340,"stem":341},"Ejemplo 4: Clase con funciones genéricas de validación","\u002Fejemplos\u002Fejemplo-04","8.ejemplos\u002F04.ejemplo-04",{"title":343,"path":344,"stem":345},"Ejemplo 5: Sistema de Gestión de Empleados","\u002Fejemplos\u002Fejemplo-05","8.ejemplos\u002F05.ejemplo-05",{"title":347,"icon":322,"path":348,"stem":349,"children":350,"page":42},"Actividades","\u002Factividades","9.actividades",[351,355,360,364,368,372,376,380,384,388,392,396,400,404,408],{"title":352,"path":353,"stem":354,"icon":105},"Actividad 1: Infografía sobre el proceso de compilación","\u002Factividades\u002Fact-01","9.actividades\u002F01.act-01",{"title":356,"path":357,"stem":358,"icon":359},"Actividad 2: Modelando Diagramas de Clases UML","\u002Factividades\u002Fact-02","9.actividades\u002F02.act-02","i-material-icon-theme-uml",{"title":361,"path":362,"stem":363,"icon":45},"Actividad 3: Creando Clases y Objetos en Java","\u002Factividades\u002Fact-03","9.actividades\u002F03.act-03",{"title":365,"path":366,"stem":367},"Actividad 4: Validando entradas de datos","\u002Factividades\u002Fact-04","9.actividades\u002F04.act-04",{"title":369,"path":370,"stem":371,"icon":105},"Actividad 5: Implementando una clase genérica","\u002Factividades\u002Fact-05","9.actividades\u002F05.act-05",{"title":373,"path":374,"stem":375,"icon":105},"Actividad 6: Expandiendo InputValidator con Predicados y Function","\u002Factividades\u002Fact-06","9.actividades\u002F06.act-06",{"title":377,"path":378,"stem":379,"icon":105},"Actividad 7: Gestor de Biblioteca con InputValidator","\u002Factividades\u002Fact-07","9.actividades\u002F07.act-07",{"title":381,"path":382,"stem":383,"icon":105},"Actividad 8: Calculadora de Figuras Geométricas","\u002Factividades\u002Fact-08","9.actividades\u002F08.act-08",{"title":385,"path":386,"stem":387,"icon":105},"Actividad 9: gestión de una empresa agroalimentaria","\u002Factividades\u002Fact-09","9.actividades\u002F09.act-09",{"title":389,"path":390,"stem":391,"icon":105},"Actividad 10: Sistema de gestión de clínicas veterinarias","\u002Factividades\u002Fact-10","9.actividades\u002F10.act-10",{"title":393,"path":394,"stem":395},"Definición de Proyecto Evolutivo","\u002Factividades\u002Frpg","9.actividades\u002F11.rpg",{"title":397,"path":398,"stem":399},"Actividad 11: Creación de Personajes","\u002Factividades\u002Fact-11","9.actividades\u002F12.act-11",{"title":401,"path":402,"stem":403},"Actividad 12: El Inventario y los Objetos","\u002Factividades\u002Fact-12","9.actividades\u002F13.act-12",{"title":405,"path":406,"stem":407},"Actividad 13: El combate por turnos","\u002Factividades\u002Fact-13","9.actividades\u002F14.act-13",{"title":409,"path":410,"stem":411},"Actividad 14: Guardando y Cargando","\u002Factividades\u002Fact-14","9.actividades\u002F15.act-14",{"id":413,"title":281,"body":414,"description":1066,"extension":1067,"links":1068,"meta":1069,"navigation":488,"path":282,"seo":1070,"stem":283,"__hash__":1071},"docs\u002F7.archivos-ui\u002F12.botones.md",{"type":415,"value":416,"toc":1060},"minimark",[417,422,431,435,438,754,757,761,764,1046,1049,1053,1056],[418,419,421],"h2",{"id":420},"qué-es-un-botón-en-swing","¿Qué es un botón en Swing?",[423,424,425,426,430],"p",{},"Un botón es un componente interactivo que permite a los usuarios realizar acciones al hacer clic en él. En Swing, la clase ",[427,428,429],"code",{},"JButton"," se utiliza para crear botones. Puedes personalizar los botones con texto, iconos, colores y estilos para mejorar la apariencia de tus interfaces.",[418,432,434],{"id":433},"cómo-crear-un-botón-básico","Cómo crear un botón básico",[423,436,437],{},"Para crear un botón básico en Swing, puedes usar el siguiente código:",[439,440,445],"pre",{"className":441,"code":442,"language":443,"meta":444,"style":444},"language-java shiki shiki-themes github-dark","import javax.swing.*;\nimport java.awt.event.ActionEvent;\nimport java.awt.event.ActionListener;\n\npublic class ExampleButton extends JButton {\n    public ExampleButton() {\n        super(\"Haz clic aquí\");\n        addActionListener(new ActionListener() {\n            @Override\n            public void actionPerformed(ActionEvent e) {\n                JOptionPane.showMessageDialog(null, \"¡Botón clickeado!\");\n            }\n        });\n    }\n\n    public static void main(String[] args) {\n        JFrame frame = new JFrame(\"Ejemplo de Botón\");\n        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);\n        frame.setSize(300, 200);\n        frame.add(new ExampleButton());\n        frame.setVisible(true);\n    }\n}\n","java","",[427,446,447,467,475,483,490,512,523,539,555,564,586,608,614,620,626,631,657,679,691,711,728,743,748],{"__ignoreMap":444},[448,449,452,456,460,464],"span",{"class":450,"line":451},"line",1,[448,453,455],{"class":454},"snl16","import",[448,457,459],{"class":458},"s95oV"," javax.swing.",[448,461,463],{"class":462},"sDLfK","*",[448,465,466],{"class":458},";\n",[448,468,470,472],{"class":450,"line":469},2,[448,471,455],{"class":454},[448,473,474],{"class":458}," java.awt.event.ActionEvent;\n",[448,476,478,480],{"class":450,"line":477},3,[448,479,455],{"class":454},[448,481,482],{"class":458}," java.awt.event.ActionListener;\n",[448,484,486],{"class":450,"line":485},4,[448,487,489],{"emptyLinePlaceholder":488},true,"\n",[448,491,493,496,499,503,506,509],{"class":450,"line":492},5,[448,494,495],{"class":454},"public",[448,497,498],{"class":454}," class",[448,500,502],{"class":501},"svObZ"," ExampleButton",[448,504,505],{"class":454}," extends",[448,507,508],{"class":501}," JButton",[448,510,511],{"class":458}," {\n",[448,513,515,518,520],{"class":450,"line":514},6,[448,516,517],{"class":454},"    public",[448,519,502],{"class":501},[448,521,522],{"class":458},"() {\n",[448,524,526,529,532,536],{"class":450,"line":525},7,[448,527,528],{"class":462},"        super",[448,530,531],{"class":458},"(",[448,533,535],{"class":534},"sU2Wk","\"Haz clic aquí\"",[448,537,538],{"class":458},");\n",[448,540,542,545,547,550,553],{"class":450,"line":541},8,[448,543,544],{"class":501},"        addActionListener",[448,546,531],{"class":458},[448,548,549],{"class":454},"new",[448,551,552],{"class":501}," ActionListener",[448,554,522],{"class":458},[448,556,558,561],{"class":450,"line":557},9,[448,559,560],{"class":458},"            @",[448,562,563],{"class":454},"Override\n",[448,565,567,570,573,576,579,583],{"class":450,"line":566},10,[448,568,569],{"class":454},"            public",[448,571,572],{"class":454}," void",[448,574,575],{"class":501}," actionPerformed",[448,577,578],{"class":458},"(ActionEvent ",[448,580,582],{"class":581},"s9osk","e",[448,584,585],{"class":458},") {\n",[448,587,589,592,595,597,600,603,606],{"class":450,"line":588},11,[448,590,591],{"class":458},"                JOptionPane.",[448,593,594],{"class":501},"showMessageDialog",[448,596,531],{"class":458},[448,598,599],{"class":462},"null",[448,601,602],{"class":458},", ",[448,604,605],{"class":534},"\"¡Botón clickeado!\"",[448,607,538],{"class":458},[448,609,611],{"class":450,"line":610},12,[448,612,613],{"class":458},"            }\n",[448,615,617],{"class":450,"line":616},13,[448,618,619],{"class":458},"        });\n",[448,621,623],{"class":450,"line":622},14,[448,624,625],{"class":458},"    }\n",[448,627,629],{"class":450,"line":628},15,[448,630,489],{"emptyLinePlaceholder":488},[448,632,634,636,639,641,644,646,649,652,655],{"class":450,"line":633},16,[448,635,517],{"class":454},[448,637,638],{"class":454}," static",[448,640,572],{"class":454},[448,642,643],{"class":501}," main",[448,645,531],{"class":458},[448,647,648],{"class":454},"String",[448,650,651],{"class":458},"[] ",[448,653,654],{"class":581},"args",[448,656,585],{"class":458},[448,658,660,663,666,669,672,674,677],{"class":450,"line":659},17,[448,661,662],{"class":458},"        JFrame frame ",[448,664,665],{"class":454},"=",[448,667,668],{"class":454}," new",[448,670,671],{"class":501}," JFrame",[448,673,531],{"class":458},[448,675,676],{"class":534},"\"Ejemplo de Botón\"",[448,678,538],{"class":458},[448,680,682,685,688],{"class":450,"line":681},18,[448,683,684],{"class":458},"        frame.",[448,686,687],{"class":501},"setDefaultCloseOperation",[448,689,690],{"class":458},"(JFrame.EXIT_ON_CLOSE);\n",[448,692,694,696,699,701,704,706,709],{"class":450,"line":693},19,[448,695,684],{"class":458},[448,697,698],{"class":501},"setSize",[448,700,531],{"class":458},[448,702,703],{"class":462},"300",[448,705,602],{"class":458},[448,707,708],{"class":462},"200",[448,710,538],{"class":458},[448,712,714,716,719,721,723,725],{"class":450,"line":713},20,[448,715,684],{"class":458},[448,717,718],{"class":501},"add",[448,720,531],{"class":458},[448,722,549],{"class":454},[448,724,502],{"class":501},[448,726,727],{"class":458},"());\n",[448,729,731,733,736,738,741],{"class":450,"line":730},21,[448,732,684],{"class":458},[448,734,735],{"class":501},"setVisible",[448,737,531],{"class":458},[448,739,740],{"class":462},"true",[448,742,538],{"class":458},[448,744,746],{"class":450,"line":745},22,[448,747,625],{"class":458},[448,749,751],{"class":450,"line":750},23,[448,752,753],{"class":458},"}\n",[423,755,756],{},"En este ejemplo, creamos un botón con el texto \"Haz clic aquí\". Al hacer clic en el botón, se muestra un mensaje emergente que dice \"¡Botón clickeado!\".",[418,758,760],{"id":759},"personalización-de-botones","Personalización de botones",[423,762,763],{},"Puedes personalizar los botones en Swing de varias maneras, como cambiar el color de fondo, el color del texto, agregar iconos, etc. Aquí tienes un ejemplo de cómo personalizar un botón:",[439,765,767],{"className":441,"code":766,"language":443,"meta":444,"style":444},"import javax.swing.*;\nimport java.awt.*;\nimport java.awt.event.ActionEvent;\nimport java.awt.event.ActionListener;\n\npublic class CustomButton extends JButton {\n    public CustomButton() {\n        super(\"Botón Personalizado\");\n        setBackground(Color.CYAN);\n        setForeground(Color.RED);\n        setFont(new Font(\"Arial\", Font.BOLD, 16));\n        addActionListener(new ActionListener() {\n            @Override\n            public void actionPerformed(ActionEvent e) {\n                JOptionPane.showMessageDialog(null, \"¡Botón personalizado clickeado!\");\n            }\n        });\n    }\n\n    public static void main(String[] args) {\n        JFrame frame = new JFrame(\"Ejemplo de Botón Personalizado\");\n        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);\n        frame.setSize(300, 200);\n        frame.add(new CustomButton());\n        frame.setVisible(true);\n    }\n}\n",[427,768,769,779,790,796,802,806,821,829,840,848,856,882,894,900,914,931,935,939,943,947,967,984,992,1008,1023,1036,1041],{"__ignoreMap":444},[448,770,771,773,775,777],{"class":450,"line":451},[448,772,455],{"class":454},[448,774,459],{"class":458},[448,776,463],{"class":462},[448,778,466],{"class":458},[448,780,781,783,786,788],{"class":450,"line":469},[448,782,455],{"class":454},[448,784,785],{"class":458}," java.awt.",[448,787,463],{"class":462},[448,789,466],{"class":458},[448,791,792,794],{"class":450,"line":477},[448,793,455],{"class":454},[448,795,474],{"class":458},[448,797,798,800],{"class":450,"line":485},[448,799,455],{"class":454},[448,801,482],{"class":458},[448,803,804],{"class":450,"line":492},[448,805,489],{"emptyLinePlaceholder":488},[448,807,808,810,812,815,817,819],{"class":450,"line":514},[448,809,495],{"class":454},[448,811,498],{"class":454},[448,813,814],{"class":501}," CustomButton",[448,816,505],{"class":454},[448,818,508],{"class":501},[448,820,511],{"class":458},[448,822,823,825,827],{"class":450,"line":525},[448,824,517],{"class":454},[448,826,814],{"class":501},[448,828,522],{"class":458},[448,830,831,833,835,838],{"class":450,"line":541},[448,832,528],{"class":462},[448,834,531],{"class":458},[448,836,837],{"class":534},"\"Botón Personalizado\"",[448,839,538],{"class":458},[448,841,842,845],{"class":450,"line":557},[448,843,844],{"class":501},"        setBackground",[448,846,847],{"class":458},"(Color.CYAN);\n",[448,849,850,853],{"class":450,"line":566},[448,851,852],{"class":501},"        setForeground",[448,854,855],{"class":458},"(Color.RED);\n",[448,857,858,861,863,865,868,870,873,876,879],{"class":450,"line":588},[448,859,860],{"class":501},"        setFont",[448,862,531],{"class":458},[448,864,549],{"class":454},[448,866,867],{"class":501}," Font",[448,869,531],{"class":458},[448,871,872],{"class":534},"\"Arial\"",[448,874,875],{"class":458},", Font.BOLD, ",[448,877,878],{"class":462},"16",[448,880,881],{"class":458},"));\n",[448,883,884,886,888,890,892],{"class":450,"line":610},[448,885,544],{"class":501},[448,887,531],{"class":458},[448,889,549],{"class":454},[448,891,552],{"class":501},[448,893,522],{"class":458},[448,895,896,898],{"class":450,"line":616},[448,897,560],{"class":458},[448,899,563],{"class":454},[448,901,902,904,906,908,910,912],{"class":450,"line":622},[448,903,569],{"class":454},[448,905,572],{"class":454},[448,907,575],{"class":501},[448,909,578],{"class":458},[448,911,582],{"class":581},[448,913,585],{"class":458},[448,915,916,918,920,922,924,926,929],{"class":450,"line":628},[448,917,591],{"class":458},[448,919,594],{"class":501},[448,921,531],{"class":458},[448,923,599],{"class":462},[448,925,602],{"class":458},[448,927,928],{"class":534},"\"¡Botón personalizado clickeado!\"",[448,930,538],{"class":458},[448,932,933],{"class":450,"line":633},[448,934,613],{"class":458},[448,936,937],{"class":450,"line":659},[448,938,619],{"class":458},[448,940,941],{"class":450,"line":681},[448,942,625],{"class":458},[448,944,945],{"class":450,"line":693},[448,946,489],{"emptyLinePlaceholder":488},[448,948,949,951,953,955,957,959,961,963,965],{"class":450,"line":713},[448,950,517],{"class":454},[448,952,638],{"class":454},[448,954,572],{"class":454},[448,956,643],{"class":501},[448,958,531],{"class":458},[448,960,648],{"class":454},[448,962,651],{"class":458},[448,964,654],{"class":581},[448,966,585],{"class":458},[448,968,969,971,973,975,977,979,982],{"class":450,"line":730},[448,970,662],{"class":458},[448,972,665],{"class":454},[448,974,668],{"class":454},[448,976,671],{"class":501},[448,978,531],{"class":458},[448,980,981],{"class":534},"\"Ejemplo de Botón Personalizado\"",[448,983,538],{"class":458},[448,985,986,988,990],{"class":450,"line":745},[448,987,684],{"class":458},[448,989,687],{"class":501},[448,991,690],{"class":458},[448,993,994,996,998,1000,1002,1004,1006],{"class":450,"line":750},[448,995,684],{"class":458},[448,997,698],{"class":501},[448,999,531],{"class":458},[448,1001,703],{"class":462},[448,1003,602],{"class":458},[448,1005,708],{"class":462},[448,1007,538],{"class":458},[448,1009,1011,1013,1015,1017,1019,1021],{"class":450,"line":1010},24,[448,1012,684],{"class":458},[448,1014,718],{"class":501},[448,1016,531],{"class":458},[448,1018,549],{"class":454},[448,1020,814],{"class":501},[448,1022,727],{"class":458},[448,1024,1026,1028,1030,1032,1034],{"class":450,"line":1025},25,[448,1027,684],{"class":458},[448,1029,735],{"class":501},[448,1031,531],{"class":458},[448,1033,740],{"class":462},[448,1035,538],{"class":458},[448,1037,1039],{"class":450,"line":1038},26,[448,1040,625],{"class":458},[448,1042,1044],{"class":450,"line":1043},27,[448,1045,753],{"class":458},[423,1047,1048],{},"En este ejemplo, el botón tiene un fondo cian, texto rojo y una fuente personalizada. Al hacer clic en el botón, se muestra un mensaje emergente que dice \"¡Botón personalizado clickeado!\".",[418,1050,1052],{"id":1051},"conclusión","Conclusión",[423,1054,1055],{},"Los botones son componentes esenciales en cualquier interfaz gráfica, y Swing ofrece una gran flexibilidad para personalizarlos según tus necesidades. Puedes experimentar con diferentes estilos, colores e iconos para crear botones que se adapten a la estética de tu aplicación y mejoren la experiencia del usuario.",[1057,1058,1059],"style",{},"html pre.shiki code .snl16, html code.shiki .snl16{--shiki-default:#F97583}html pre.shiki code .s95oV, html code.shiki .s95oV{--shiki-default:#E1E4E8}html pre.shiki code .sDLfK, html code.shiki .sDLfK{--shiki-default:#79B8FF}html pre.shiki code .svObZ, html code.shiki .svObZ{--shiki-default:#B392F0}html pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}html pre.shiki code .s9osk, html code.shiki .s9osk{--shiki-default:#FFAB70}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":444,"searchDepth":469,"depth":469,"links":1061},[1062,1063,1064,1065],{"id":420,"depth":469,"text":421},{"id":433,"depth":469,"text":434},{"id":759,"depth":469,"text":760},{"id":1051,"depth":469,"text":1052},"Cómo crear y personalizar botones en Swing para mejorar la interacción de tus interfaces.","md",null,{"editButton":42},{"title":281,"description":1066},"HYydoKefZwZ63iLmlfAu1MR89ofS3opYExzSUAcMS3E",[1073,1075],{"title":277,"path":278,"stem":279,"description":1074,"children":-1},"Cómo usar gradientes en Swing para mejorar la apariencia de tus interfaces.",{"title":285,"path":286,"stem":287,"description":1076,"children":-1},"Cómo usar delegadores en Swing para manejar eventos y mejorar la interacción de tus interfaces.",1779479575217]