1. مبدأ
المبدأ بسيط للغاية: إنه مجرد Jlabel و Jpanel. يعرض Jlabel نص العنوان والصور التي تشير إلى ما إذا كان التحكم في حالة موسعة أو منهارات موسعة ؛ في حين أن JPanel لديها وظيفة واحدة بشكل أساسي - الحاوية التي تحمل عنصر التحكم. يتحكم Jlabel في ما إذا كان يتم عرض JPanel من خلال الرد على حدث الماوس. هذا سيحقق تأثير الطي أو التوسع.
لن أقول الكثير أدناه ، دعنا نلقي نظرة على رمز العينة المفصل
2. الكود
الطبقة العامة jShRinkablePanel يمتد jpanel {private jlabellabel ؛ private stringtitle = "" ؛ private jpanelcontentpanel = null ؛ private boolean isExpanded = true ؛ private jListList = new jlist () ؛ {super () ؛ this.title = title ؛ this.contentPanel = contentPanel ؛ initComponents () ؛ initComponentsStatus () ؛ initlayout () ؛ initResources () ؛ unregisterevents () {this.label.SethorizontalAlignment (jlabel.left) ؛ this.label.setverticalAlignment (jlabel.center) ؛ this.label.setverticletextposition (jlabel.center) ؛ this.label.setbackground (this.listselectebackgroundground ()) ؛ ImageIcon ("src/sourse/expend.png") ؛ this.iconcollapse = new imageicon ("src/resources/collapse.png") ؛} private void initlayout () Gridbagconstraints.west ، gridbagconstraints.horizontal ، insets الجديدة (0،0،0،0) ، 0،0)) ؛ هذا. insets (0،0،0،0) ، 0،0)) ؛} private void interresources () {this.label.seticon (this.iconexpand) ؛ this.label.settext (this.title) ؛} unregisterevents () {this.label.addmouselistener (this.mouselistener) ؛} mouselistenermouseListener الخاص = جديد mouseadapter () {Overridepublic void mouseclicked (mouseevent e) {isexpanded =! isexpanded ؛ {label.setopaque (true) ؛ label.repaint () ؛}@@overridepublic void mouseexited (mouseevent e) {label.setopaque (false) ؛ label.repaint () ؛ ؟ this.iconexpand: this.iconcollapse) ؛} الفراغ الثابت العام الرئيسي (سلسلة [] args) {jframe jf = new jframe ("jShrinkablePanel") ؛ jf.setBounds (400،200،400،300) ؛ jpanel () ؛ panel.add (new jbutton ("Just for show")) ؛ panel.setBorder (borderfactory.createTitleDborder ("border") ؛3. التأثير
لوحة توسيع الماوس على ملصق العنوان
تقوم اللوحة بتوسيع الماوس وليس على ملصق العنوان
لوحة طية الماوس على تسمية العنوان
الماوس القابل للطي ليس على ملصق العنوان
لخص
ما سبق هو المحتوى الكامل لهذه المقالة. آمل أن يكون لمحتوى هذه المقالة قيمة مرجعية معينة لدراسة أو عمل الجميع. إذا كان لديك أي أسئلة ، فيمكنك ترك رسالة للتواصل. شكرا لك على دعمك إلى wulin.com.