Hi, Please see the snippet below.
Over the past weeks, the ULC Support team has answered a number of questions from you and your team in India. We strongly recommend purchasing support for your ongoing project. Thanks and regards, Janak -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of [EMAIL PROTECTED] Sent: Wednesday, July 26, 2006 4:23 PM To: [email protected] Subject: [ULC-developer] Gradient Painting Hi all, I would like to paint a gradient for a background color on a pane. I am using ULC 6.1, the example that I have seen on the mailing list refer to a UiJPanel, but I am unable to resolve this component. Any help would be appreciated. I was looking at the following example. http://lists.canoo.com/mailman/private/ulc-developer/2005/001990.html thanks, ---------------------------------------------- import com.ulcjava.base.application.AbstractApplication; import com.ulcjava.base.application.BorderFactory; import com.ulcjava.base.application.ULCBorderLayoutPane; import com.ulcjava.base.application.ULCBoxPane; import com.ulcjava.base.application.ULCFrame; import com.ulcjava.base.application.ULCLabel; import com.ulcjava.base.application.border.ULCAbstractBorder; import com.ulcjava.base.application.border.ULCCompoundBorder; import com.ulcjava.base.application.util.Color; import com.ulcjava.base.client.UIBorderLayoutPane; import com.ulcjava.base.development.DevelopmentRunner; import com.ulcjava.base.shared.internal.Anything; import javax.swing.UIManager; import java.awt.BorderLayout; import java.awt.GradientPaint; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Paint; public class ULCGradientPaneSnippet extends AbstractApplication { public void start() { ULCLabel headerLabel = new ULCLabel("ULCGradientPane Sample"); headerLabel.setBorder(createLineBorder()); ULCLabel label = new ULCLabel("Content"); label.setBorder(createEmptyBorder(20)); ULCBoxPane centerPane = new ULCBoxPane(); centerPane.setOpaque(false); centerPane.add(label); ULCGradientPane gradientPane = new ULCGradientPane(); gradientPane.add(headerLabel, ULCBorderLayoutPane.NORTH); gradientPane.add(centerPane, ULCBorderLayoutPane.CENTER); ULCFrame frame = new ULCFrame("ULCGradientPaneSnippet"); frame.setDefaultCloseOperation(ULCFrame.TERMINATE_ON_CLOSE); frame.setContentPane(gradientPane); frame.setVisible(true); } private static ULCCompoundBorder createLineBorder() { ULCAbstractBorder lineBorder = BorderFactory.createLineBorder(Color.black); ULCCompoundBorder outsideBorder = BorderFactory.createCompoundBorder( createEmptyBorder(), lineBorder ); return BorderFactory.createCompoundBorder( outsideBorder, createEmptyBorder() ); } private static ULCAbstractBorder createEmptyBorder() { return createEmptyBorder(4); } private static ULCAbstractBorder createEmptyBorder(int size) { return BorderFactory.createEmptyBorder(size, size, size, size); } public static class ULCGradientPane extends ULCBorderLayoutPane { protected String typeString() { return UIGradientPane.class.getName(); } } public static class UIGradientPane extends UIBorderLayoutPane { protected Object createBasicObject(Anything args) { return new GradientPanel(); } private class GradientPanel extends BasicPanel { public GradientPanel() { super(); setLayout(new BorderLayout()); } protected void paintComponent(Graphics g) { super.paintComponent(g); if (isOpaque()) { java.awt.Color lightColor = java.awt.Color.blue; java.awt.Color darkColor = UIManager.getColor("control"); GradientPaint gradientPaint = new GradientPaint( 0.0F, 0.0F, lightColor, getWidth(), getHeight(), darkColor ); Graphics2D g2 = (Graphics2D)g; Paint originalPaint = g2.getPaint(); g2.setPaint(gradientPaint); g2.fillRect(0, 0, getWidth(), getHeight()); g2.setPaint(originalPaint); } }; } } public static void main(String[] args) { DevelopmentRunner.setApplicationClass(ULCGradientPaneSnippet.class); DevelopmentRunner.main(args); } } _______________________________________________ ULC-developer mailing list [email protected] http://lists.canoo.com/mailman/listinfo/ulc-developer
