⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nimrodlookandfeel.java

📁 一个java漂亮外观的源码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
   * Ademas, no es mala idea que la decoracion de la ventana principal la ponga el sistema operativo   * para que sea igual que todas (y si tiene transparencias, mejor)   */  public boolean getSupportsWindowDecorations() {    return false;  }  /* Esta mierda es debida a que quiero que esto funcione en la version 1.4 de Java y ademas,      que el sitio adecuado para dejar la transparencia de los menus es el theme. Bueno, pues     en la version 1.4 eso no se puede hacer, porque la funcion getCurrentTheme es privada de     MetalLookAndFeel, asi que no hay manera de saber que tema se esta usando y por tanto no     se puede recuperar la opacidad (ni ninugna otra caracteristica de los temas que no sea      estandar). Asi que hay que replicar la funcion setCurrentTheme aqui, guardar el tema en      una variable local y devolverlo despues en la funcion getOpacity  */  public static void setCurrentTheme( MetalTheme t) {    MetalLookAndFeel.setCurrentTheme( t);        theme = t;    NimRODUtils.rollColor = null;  }    protected void initClassDefaults( UIDefaults table) {    super.initClassDefaults( table);        table.put( "ButtonUI", "com.nilo.plaf.nimrod.NimRODButtonUI");    table.put( "ToggleButtonUI", "com.nilo.plaf.nimrod.NimRODToggleButtonUI");    table.put( "TextFieldUI", "com.nilo.plaf.nimrod.NimRODTextFieldUI");    table.put( "PasswordFieldUI", "com.nilo.plaf.nimrod.NimRODPasswordFieldUI");    table.put( "CheckBoxUI", "com.nilo.plaf.nimrod.NimRODCheckBoxUI");    table.put( "RadioButtonUI", "com.nilo.plaf.nimrod.NimRODRadioButtonUI");    table.put( "FormattedTextFieldUI", "com.nilo.plaf.nimrod.NimRODFormattedTextFieldUI");    table.put( "SliderUI", "com.nilo.plaf.nimrod.NimRODSliderUI");        table.put( "ListUI", "com.nilo.plaf.nimrod.NimRODListUI");    table.put( "ScrollBarUI", "com.nilo.plaf.nimrod.NimRODScrollBarUI");    table.put( "ToolBarUI", "com.nilo.plaf.nimrod.NimRODToolBarUI");    table.put( "ProgressBarUI", "com.nilo.plaf.nimrod.NimRODProgressBarUI");        table.put( "TabbedPaneUI", "com.nilo.plaf.nimrod.NimRODTabbedPaneUI");    table.put( "TableHeaderUI", "com.nilo.plaf.nimrod.NimRODTableHeaderUI");    table.put( "SplitPaneUI", "com.nilo.plaf.nimrod.NimRODSplitPaneUI");        table.put( "InternalFrameUI", "com.nilo.plaf.nimrod.NimRODInternalFrameUI");    table.put( "DesktopIconUI", "com.nilo.plaf.nimrod.NimRODDesktopIconUI");        // Todo esto, es para sacar un triste menu        table.put( "MenuBarUI", "com.nilo.plaf.nimrod.NimRODMenuBarUI");    table.put( "MenuUI", "com.nilo.plaf.nimrod.NimRODMenuUI");    table.put( "PopupMenuUI", "com.nilo.plaf.nimrod.NimRODPopupMenuUI");    table.put( "PopupMenuSeparatorUI", "com.nilo.plaf.nimrod.NimRODPopupMenuSeparatorUI");    table.put( "MenuItemUI", "com.nilo.plaf.nimrod.NimRODMenuItemUI");    table.put( "CheckBoxMenuItemUI", "com.nilo.plaf.nimrod.NimRODCheckBoxMenuItemUI");    table.put( "RadioButtonMenuItemUI", "com.nilo.plaf.nimrod.NimRODRadioButtonMenuItemUI");    /*    for( Enumeration en = table.keys(); en.hasMoreElements(); ) {      System.out.println( "[" + (String)en.nextElement() + "]");    }    */  }  protected void initSystemColorDefaults( UIDefaults table) {    super.initSystemColorDefaults( table);        // Esto es para que todo lo que este seleccionado tenga el mismo color.    table.put( "textHighlight", getMenuSelectedBackground());        // Y esto, para que se vean bien los textos inactivados.    table.put( "textInactiveText", getInactiveSystemTextColor().darker());        /*    for( Enumeration en = table.keys(); en.hasMoreElements(); ) {      System.out.println( "[" + (String)en.nextElement() + "]");    }    */  }  private int tercio( int a, int b) {    return b + 2*((a-b) / 3);  }    protected void initComponentDefaults( UIDefaults table) {    super.initComponentDefaults( table);        try {      Color cFore = (Color)table.get( "MenuItem.disabledForeground");      Color cBack = (Color)table.get( "MenuItem.foreground");            Color col = new Color( tercio( cFore.getRed(), cBack.getRed()),                             tercio( cFore.getGreen(), cBack.getGreen()),                             tercio( cFore.getBlue(), cBack.getBlue())                            );      table.put(  "MenuItem.disabledForeground", col);      table.put(  "Label.disabledForeground", col);      table.put(  "CheckBoxMenuItem.disabledForeground", col);      table.put(  "Menu.disabledForeground", col);      table.put(  "RadioButtonMenuItem.disabledForeground", col);      table.put(  "ComboBox.disabledForeground", col);      table.put(  "Button.disabledText", col);      table.put(  "ToggleButton.disabledText", col);      table.put(  "CheckBox.disabledText", col);      table.put(  "RadioButton.disabledText", col);    }    catch ( Exception ex) {      ex.printStackTrace();    }        table.put( "MenuBar.border", NimRODBorders.getMenuBarBorder());    Font fontMenu = ((Font)table.get( "Menu.font")).deriveFont( Font.BOLD);    //table.put( "Menu.font", fontMenu);    table.put( "MenuItem.acceleratorFont", fontMenu);    //table.put( "MenuItem.font", fontMenu);    //table.put( "PopupMenu.font", fontMenu);    table.put( "RadioButtonMenuItem.acceleratorFont", fontMenu);    //table.put( "RadioButtonMenuItem.font", fontMenu);    table.put( "CheckBoxMenuItem.acceleratorFont", fontMenu);    //table.put( "CheckBoxMenuItem.font", fontMenu);            // Para la sombra de los popupmenus    table.put( "BorderPopupMenu.SombraBajIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/SombraMenuBajo.png"));    table.put( "BorderPopupMenu.SombraDerIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/SombraMenuDer.png"));    table.put( "BorderPopupMenu.SombraEsqIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/SombraMenuEsq.png"));    table.put( "BorderPopupMenu.SombraUpIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/SombraMenuUp.png"));    table.put( "BorderPopupMenu.SombraIzqIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/SombraMenuIzq.png"));        // Para el JTree    table.put( "Tree.collapsedIcon", NimRODIconFactory.getTreeCollapsedIcon());    table.put( "Tree.expandedIcon", NimRODIconFactory.getTreeExpandedIcon());    table.put( "Tree.closedIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/TreeDirCerrado.png"));    table.put( "Tree.openIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/TreeDirAbierto.png"));    table.put( "Tree.leafIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/TreeFicheroIcon.png"));    table.put( "Tree.EstructuraCollapsedIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/TreeCollapsedIcon.png"));    table.put( "Tree.EstructuraExpandedIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/TreeExpandedIcon.png"));        // Los dialogos de ficheros    table.put( "FileView.directoryIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogDirCerrado.png"));    table.put( "FileView.fileIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogFicheroIcon.png"));    table.put( "FileView.floppyDriveIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogFloppyIcon.png"));    table.put( "FileView.hardDriveIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogHDIcon.png"));    table.put( "FileChooser.newFolderIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogNewDir.png"));    table.put( "FileChooser.homeFolderIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogHome.png"));    table.put( "FileChooser.upFolderIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogDirParriba.png"));    table.put( "FileChooser.detailsViewIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogDetails.png"));    table.put( "FileChooser.listViewIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/DialogList.png"));            // Para los muchos CheckBox y RadioButtons    table.put( "CheckBoxMenuItem.checkIcon", NimRODIconFactory.getCheckBoxMenuItemIcon());    table.put( "RadioButtonMenuItem.checkIcon", NimRODIconFactory.getRadioButtonMenuItemIcon());        table.put( "Menu.checkIcon", NimRODIconFactory.getBandaMenuItemIcon());    table.put( "MenuItem.checkIcon", NimRODIconFactory.getBandaMenuItemIcon());    table.put( "MenuCheckBox.iconBase", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/MenuCheckBoxBase.png"));    table.put( "MenuCheckBox.iconTick", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/MenuCheckBoxTick.png"));    table.put( "MenuRadioButton.iconBase", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/MenuRadioBase.png"));    table.put( "MenuRadioButton.iconTick", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/MenuRadioTick.png"));    table.put( "CheckBox.iconBase", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/CheckBoxBase.png"));    table.put( "CheckBox.iconTick", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/CheckBoxTick.png"));    table.put( "RadioButton.iconBase", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/RadioButtonBase.png"));    table.put( "RadioButton.iconTick", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/RadioButtonTick.png"));        // Los iconillos de los dialogos    table.put( "OptionPane.errorIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/Error.png"));    table.put( "OptionPane.informationIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/Inform.png"));    table.put( "OptionPane.warningIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/Warn.png"));    table.put( "OptionPane.questionIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/Question.png"));        // PAra el JSlider    table.put( "Slider.horizontalThumbIcon", NimRODIconFactory.getSliderHorizontalIcon());    table.put( "Slider.verticalThumbIcon", NimRODIconFactory.getSliderVerticalIcon());    table.put( "Slider.horizontalThumbIconImage", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/HorizontalThumbIconImage.png"));    table.put( "Slider.verticalThumbIconImage", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/VerticalThumbIconImage.png"));        // Para las scrollbars    table.put( "ScrollBar.horizontalThumbIconImage", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/HorizontalScrollIconImage.png"));    table.put( "ScrollBar.verticalThumbIconImage", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/VerticalScrollIconImage.png"));        // Margenes de los botones    table.put( "Button.margin", new InsetsUIResource( 5,14, 5,14));    table.put( "ToggleButton.margin", new InsetsUIResource( 5,14, 5,14));        // Esto realmente no es necesario porque no se sobrecarga la clase ScrollPaneUI, pero si no se sobrecarga    // el borde de ScrollPane, NetBeans 5.5 se queda tieso cuando cierras todas las pesta馻s del panel principal...     table.put( "ScrollPane.border", NimRODBorders.getScrollPaneBorder());        // Para los InternalFrames y sus iconillos    table.put( "Desktop.background", (Color)table.get( "MenuItem.background"));    table.put( "InternalFrame.border", NimRODBorders.getInternalFrameBorder());        table.put( "InternalFrame.NimCloseIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameClose.png"));    table.put( "InternalFrame.NimCloseIconRoll", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameCloseRoll.png"));    table.put( "InternalFrame.NimCloseIconPush", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameClosePush.png"));        table.put( "InternalFrame.NimMaxIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameMaximiza.png"));    table.put( "InternalFrame.NimMaxIconRoll", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameMaximizaRoll.png"));    table.put( "InternalFrame.NimMaxIconPush", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameMaximizaPush.png"));        table.put( "InternalFrame.NimMinIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameMinimiza.png"));    table.put( "InternalFrame.NimMinIconRoll", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameMinimizaRoll.png"));    table.put( "InternalFrame.NimMinIconPush", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameMinimizaPush.png"));        table.put( "InternalFrame.NimResizeIcon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameResize.png"));    table.put( "InternalFrame.NimResizeIconRoll", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameResizeRoll.png"));    table.put( "InternalFrame.NimResizeIconPush", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/FrameResizePush.png"));        table.put( "InternalFrame.closeIcon", NimRODIconFactory.getFrameCloseIcon());    table.put( "InternalFrame.minimizeIcon", NimRODIconFactory.getFrameAltMaximizeIcon());    table.put( "InternalFrame.maximizeIcon", NimRODIconFactory.getFrameMaxIcon());    table.put( "InternalFrame.iconifyIcon", NimRODIconFactory.getFrameMinIcon());    table.put( "InternalFrame.icon", NimRODUtils.loadRes( "/com/nilo/plaf/nimrod/icons/Frame.png"));    table.put( "NimRODInternalFrameIconLit.width", new Integer( 20));    table.put( "NimRODInternalFrameIconLit.height", new Integer( 20));        Font fontIcon = ((Font)table.get( "InternalFrame.titleFont")).deriveFont( Font.BOLD);    table.put( "DesktopIcon.font", fontIcon);    table.put( "NimRODDesktopIcon.width", new Integer( 80));    table.put( "NimRODDesktopIcon.height", new Integer( 60));    table.put( "NimRODDesktopIconBig.width", new Integer( 48));    table.put( "NimRODDesktopIconBig.height", new Integer( 48));        // Esto no se usa dentro del codigo de NimROD LaF, pero SWTSwing y el plugin EoS de Eclipse si lo usan    table.put(  "InternalFrame.activeTitleBackground", getMenuSelectedBackground());    table.put(  "InternalFrame.activeTitleGradient", getMenuSelectedBackground().darker());    table.put(  "InternalFrame.inactiveTitleBackground", getMenuBackground().brighter());    table.put(  "InternalFrame.inactiveTitleGradient", getMenuBackground().darker());        //Esto es solo para saber que hay en la tabla    /*    for( Enumeration en = table.keys(); en.hasMoreElements(); ) {      System.out.println( "[" + (String)en.nextElement() + "]");    }    */  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -