私は助けが必要です、私はカスタムにしたいラベルコンポーネントはzkと私はプロパティを追加する必要があります必須のプロパティは、私は必須= "true"を設定するとアステリックスシンボルが表示されます私は必須=「false」にアスタリスク記号が消え設定し、私はこのようなしようとしています:どのようにZKでコンポーネントラベルをカスタマイズする
private Label label;
private Label sign;
private String lblValue;
private String REQUIRED_SIGN = " *";
private boolean mandatory;
public SignLabelCustom()
{
label = new Label();
label.setSclass("form-label");
appendChild(label);
sign = new Label();
if(mandatory=true){
sign.setValue(REQUIRED_SIGN);
sign.setStyle("color: red");
appendChild(sign);
}
else{
sign.setValue("");
sign.setStyle("color: red");
removeChild(sign);
}
}
public String getValue() {
return lblValue;
}
public boolean isMandatory() {
return mandatory;
}
public void setMandatory(boolean mandatory) {
this.mandatory = mandatory;
}
public void setValue(String lblValue) {
label.setValue(lblValue);
this.lblValue = lblValue;
}
が、条件は、どのようにそれを解決するためにワーキングdoes'nt?
申し訳ありませんが、もし私があなたの提案を流したら、私のzk.xmlにaddonタグを追加しなければならないということです。この例のようなすべての.zulファイルの上に定義を入れる必要はありません: '' <?component name = "signLabel" class = "com.common.shared.acction.adira.bitozen.zul.SignLabel"?> 'しかし、もし私が上記のタグを追加したいのであれば、私のzkにtag addonを追加する必要があります。 xml? –
このタグを必要な.zulファイルに追加しても問題ない場合は、もちろんそうすることができます。この場合、それ以上のアクションは必要ありません。言語アドオンは必要ありません。ほとんどの場合、味の問題だと思います。 –
大丈夫、今私は自分のプロジェクトにあなたの例のクラス 'MyTextbox'を追加しようとします、と私は'このように私のZULにインポートしようとする<?コンポーネント名=「MyTextBoxを」クラス=「com.example.MyTextbox」?> '私はaddonを定義するためのファイルを作成していないので、 'macroURI ="/zk/textbox.zul "なしで、' mytextbox id = "name" value = "Frank N. Furter "caption ="あなたの名前 "mandatory =" true "/> 'それは正しく機能するはずですか?私はちょうど 'MyTextbox'である1つのJavaクラスを作成し、それをzulファイルで呼び出す必要があります。 –