首页 > 编程知识 正文

java static,jtextfield自动换行

时间:2023-05-03 19:54:26 阅读:176941 作者:3924

1/* *2* @ (my jtextfield.Java 0.1.12007-9-83 */4 packageruislan; 56importjava.awt.BorderLayout; 7importjava.awt.Color; 8importjava.awt.Component; 9importjava.awt.Container; 10importjava.awt.Font; 11importjava.awt.Point; 12 import Java.awt.event.component adapter; 13 import Java.awt.event.component event; 14 import Java.awt.event.key adapter; 15 import Java.awt.event.keyevent; 1617importjavax.swing.Icon; 18importjavax.swing.ImageIcon; 19importjavax.swing.JDialog; 20importjavax.swing.JFrame; 21importjavax.swing.JLabel; 22 import javax.swing.jlayeredpane; 23importjavax.swing.JPanel; 24importjavax.swing.JTextField; 25 import javax.swing.border.empty border; 2627 import net.Java.balloon tip.balloon border; 82930/* * 31 * custom jtextfield.32 * 33 * @ version0.1. 1,2007-9-934 * @ authorruislan 35 */36 publicclasmyjtextexteld 39privatebooleannumberOnly; 40privateCoolToolTipnumberTip; 41privateCoolToolTiplimitTip; 42专用映像连接; 4344 publicmyjtextfield ((45 init components ); 46initEventListeners(47 ) 4849 privatevoidinitcomponents ((50 tipicon=new image icon ) myjtextfield.class.getresource ) 5152 numbertip=newcooltooltip (this,TIP_COLOR,getColumns ),10 ); 53numberTip.setText ('只能输入数字!' ); 54numbertip.seticon(tipicon; 5numbertip.seticontextgap(10 ); 557 limit tip=newcooltooltip (this,TIP_COLOR,getColumns ),10 ); 58limittip.seticon(tipicon; 59limittip.seticontextgap(10 ); 60 ) 6162 privatevoidiniteventlisteners () 63 addkey listener (new key adapter ) ) 64 @ override 65 publicvoidkeytyped ) keyevevevevevevey 69返回; 70 } else { 71 limit tip.set visible (false ); 72 ) 73if(numberonly ) {74charinput=e.getKeyChar ); 75if (! Character.isdigit(input ) ) 76numbertip.setvisible ) true; 77deleteinputchar(e ); 78 ) else(79numbertip.setvisible ) )假; 80 ) 81 ) 8384 privatevoiddeleteinputchar (keyevent source ) 85source.setkeychar ) ) (char ) KeyEvent.VK_CLEAR; 86}87}; 88 ) 8990 publicvoidsetmaxtextlength (int limit ) 91if ) limit0) {92return; 93 ) 94this.limit=limit; 95 limit tip.settext (string.format (% d (),limit ) ); 96 ) 9798 publicintgetmaxtextlength ({ 99返回限制; 100 ) 101102 publicvoidsetnumberonly (booleannumberonly ) {103this.numberOnly=numberOnly; 104 ) 105106 publicbooleanisnumberonly () {107returnthis.numberOnly; 108 ) 109110 privateclasscooltooltipextendsjpanel (111 privatejlabellabel=new jlabel ); 112privatebooleanhaveShowPlace; 13114专用组件; 15116 publiccooltooltip (componentattachedcomponent,ColorfillColor,117intborderWidth, intoffset ) 118 this.attachedcooltip 19120 label.set border (newemptyborder (borderWidth,border width,121borderWidth,border 122 label.set background (fill color ); 123label.setOpaque(true; 124 label.set font (new font (system ),0,12 ); 125126设置选项(false; 127 this.set border (newballoonborder (fill color,offset ); 128 this.set layout (new borderlayout ) ); 129标签; 130131设置可视化(false; 132133//iftheattachedcomponentismovedwhiletheballoontipis 134//visible, weneedtomoveaswell 135附加组件. addcomponentlistener (newcomponentadapter ) (136publicvoidcomponentmoved )组件142143 } 144145 privatevoiddetermineandsetlocation () (146 point location=attached component.get location ); 147setbounds(location.x,location.y-getpreferredsize (.height,148getPreferredSize ).width,getpreferedsize ) 153 ) 154155公共语音设置(iconicon ) 156label.seticon ) icon; 157 ) 158159公共关联xtgap (inticontextgap ) 160label.seticontextgap ) icontextgap; 161 ) 162163 publicvoidsetvisible (booleanshow ) 164if ) show ) {165determineAndSetLocation ); 166查找结果; 167 ) 168super.setvisible(show ); 169 } 170171 privatevoidfindshowplace () ) 172if ) haveshowplace ) {173return; 174 ) 175//weusethepopuplayerofthetoplevelcontainer (frame or 176//dialog ) toshowtheballoontip177/

178 container parent=attached component.get parent (; 179JLayeredPanelayeredPane; 180while(true ) 181if(parentinstanceofjframe ) 182层面jframe ) parent ).getLayeredPane; 183break; 184 )对等操作盘(if ) 185分层的盘=((jdialog )盘).getLayeredPane; 186break; 187 ) 188parent=parent.getparent (; 189 ) 190layeredpane.add(this,JLayeredPane.POPUP_LAYER ); 191haveShowPlace=true; 192(193 ) 194 ) 195

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。