我们的数据库中有数值,表示两值状态.当然,这将完全匹配布尔值,但oracle没有这样的数据类型.数据库中的NUMBER(1,0)类型与Java中的java.lang.Short类型匹配(有时它们使用NUMBER(*,0)来表示与java.math.BigDecimal匹配的布尔值).
由于它在某种程度上是显而易见的,我想在视图中提供ice:selectBooleanCheckbox作为值表示,向用户提供UIComponent.(我使用IceFaces作为JSF实现)
由于某些指定JSF的人认为总是将ice的值:selectBooleanCheckbox或JSF h:selectBooleanCheckbox与模型中的布尔值匹配是显而易见的,因此组件的渲染器永远不会调用任何转换器,即使您指定了一个: 问题在java.net上讨论过
因此我尝试了以下方法:
我创建了一个转换器来在UIComponent中指定它:
public class BooleanBigDecimalConverter implements Converter {
public Object getAsObject(FacesContext context, UIComponent component, String str) {
if (StringUtils.isEmptyString(str)) {
return new BigDecimal(0);
}
if (str.equals("true")) {
return new BigDecimal(1);
} else {
return new BigDecimal(0);
}
}
public String getAsString(FacesContext context, UIComponent component, Object obj) {
if (obj != null) {
String str = obj.toString();
if (str.equalsIgnoreCase("1")
|| str.equalsIgnoreCase("yes")
|| str.equalsIgnoreCase("true")
|| str.equalsIgnoreCase("on")) {
return "true";
} else {
return "false";
}
}
return …Run Code Online (Sandbox Code Playgroud) 捕获:http://i.stack.imgur.com/EgfZs.png
以下是我已经消化并尝试错误Dr.Google显示的代码:
public class ColorCode{
private Color color;
private String alias;
...
}
public class ElectronicColorCode extends JFrame implements ActionListener{
private JComboBox[] selections = new JComboBox[4];
...
public ElectronicColorCode(){
for(int i=0; i<selections.length; i++){
selections[i] = new JComboBox();
for(int j=0; j<tolColorSets.length; j++)
selections[i].addItem(new ComboBoxRenderer(colorSets[j]));
}
selections[i].addActionListener(this);
...
}
}
class ComboBoxRenderer extends JLabel implements ListCellRenderer{
private ColorCode colorCode;
public ComboBoxRenderer(ColorCode colorCode){
super();
this.colorCode = colorCode;
setBackground(colorCode.getColor());
setText(colorCode.getAlias());
System.out.println(colorCode.getAlias());
}
public Component getListCellRendererComponent(JList list, Object …Run Code Online (Sandbox Code Playgroud) 我需要创建看起来像JTextField的组件(相同的边框,阴影,圆角等),但用于显示带文本的图形.
是否可以为JTextField创建渲染器之类的东西?或者基于JPanel创建自定义组件,但是如何强制它看起来与JTextField相同
另一个复杂因素是应用程序将在不同的LAF上运行.
你有什么想法 ?
我有一个Three.js场景,我在其中设置了渲染器的preserveDrawingBuffer:true因为我想使用renderer.toDataURL拍摄画布上的内容的快照,我也使用renderer.autoClear = false因为我使用的是2个场景每个一个摄像头(当然一个渲染器).
问题在于,当我使用orbitControls移动相机时,对象不会像它们应该的那样动画,它们之前的状态保留在画布上,并且由于preserveDrawingBuffer:true设置,它们正在创建一个丑陋的绘画(它们不会被删除).
如何同时拥有2个场景/摄像机和轨道控制的快照功能,我该怎么办?
谢谢.
我想直接在代码中将裤子的颜色从蓝色(#0088f0)更改为红色(#f00000)(这是2D精灵)。
我进行了很多搜索,但未找到无需重新着色特定像素(setPixel()).. ect。的精灵对象。
我们不能以某种方式仅将颜色替换为精灵上的另一种颜色吗?例如,对于此精灵,默认情况下BLUE的RGB渲染等于RED?