Bu Mnemonic anahtar da gösterilir ve Alt + "Mnemonic Key" basmak: Etkin sağlayan ile SWT Düğmeler içinde ön plan rengi Uygulama kodudur;
Button radioButton=new Button(parent,SWT.RADIO);
StringBuffer sb = new StringBuffer("I am a Coloured radio button");
String name=null;
String S = "I am a Coloured radio button";
String substr="C";
int i=S.indexOf(substr);
sb.insert(i,"&");
S=sb.toString();
name=sb.substring(i, i+2);
name=sb.toString();
String whiteSpace=" ";
final String TName=S;
for(int l=0;l<1000;l++)
whiteSpace=whiteSpace.concat(" ");
radioButton.setText(name+whiteSpace);
radioButton.addPaintListener(new PaintListener(){
String name=TName;
@Override
public void paintControl(PaintEvent e) {
// TODO Auto-generated method stub
e.gc.setForeground(hex2Col("ffffcc"));
int x=21;
int y=21;
e.gc.drawText(name, x,y,SWT.DRAW_MNEMONIC | SWT.TRANSPARENT);
}
});
Not: hex2Col Renk Türü altıgen Renk Kodunu dönüştürme için kendi yöntemdir
Not: Burada ALT + C i kullanılmış olan Mnemonic Tuş Birleşimi olan
Teşekkür Mario . Konumlandırmayı düzeltmek biraz uğraştı ama tavsiyen iş yaptı. –
@Kevin Stembridge SWT GC’ye yeni katılıyorum, konumlandırmayı nasıl doğru yapacağım konusunda bana yardımcı olabilir misiniz? Bu zor gibi görünüyor çünkü metin farklı hizalanabilir. Teşekkürler! – RAY
Konumlandırma, Düğmenin getSize() yöntemi ve GC'nin stringExtent() yöntemi kullanılarak yapılabilir. Böylece metnin boyutunu ve boyutunu elde edebilirsiniz. – Alex