亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

SWT(JFace)體驗之ApplicationWindow

2020-01-31 16:51:50
字體:
來源:轉載
供稿:網友
測試代碼如下:
復制代碼 代碼如下:

package swt_jface.demo;
import org.eclipse.jface.window.ApplicationWindow;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
public class TemperatureConverterJFace extends ApplicationWindow {
Label fahrenheitLabel;
Label celsiusLabel;
Text fahrenheitValue;
Text celsiusValue;

public TemperatureConverterJFace() {

super(null);

addStatusLine();
}
protected Control createContents(Composite parent) {
getShell().setText("JFace Temperature Converter");

Composite converterComposite = new Composite(parent, SWT.NULL);

converterComposite.setLayout(new GridLayout(4, false));
fahrenheitLabel = new Label(converterComposite, SWT.NULL);
fahrenheitLabel.setText("Fahrenheit: ");
fahrenheitValue = new Text(converterComposite, SWT.SINGLE | SWT.BORDER);
celsiusLabel = new Label(converterComposite, SWT.NULL);
celsiusLabel.setText("Celsius: ");
celsiusValue = new Text(converterComposite, SWT.SINGLE | SWT.BORDER);
ModifyListener listener = new ModifyListener() {
public void modifyText(ModifyEvent e) {
valueChanged((Text) e.widget);
}
};
fahrenheitValue.addModifyListener(listener);
celsiusValue.addModifyListener(listener);

return converterComposite;
}
public void valueChanged(Text text) {
if (!text.isFocusControl())
return;
if (text == fahrenheitValue) {
try {
double fValue = Double.parseDouble(text.getText());
double cValue = (fValue - 32) / 1.8;
celsiusValue.setText(Double.toString(cValue));
System.out.println("F -> C: " + cValue);
setStatus("Conversion performed successfully.");
} catch (NumberFormatException e) {
celsiusValue.setText("");
setStatus("Invalid number format: " + text.getText());
}
} else {
try {
double cValue = Double.parseDouble(text.getText());
double fValue = cValue * 1.8 + 32;
fahrenheitValue.setText(Double.toString(fValue));
System.out.println("C -> F: " + fValue);
setStatus("Conversion performed successfully.");
} catch (NumberFormatException e) {
fahrenheitValue.setText("");
setStatus("Invalid number format: " + text.getText());
}
}
}

public static void main(String[] args) {
TemperatureConverterJFace converter = new TemperatureConverterJFace();
converter.setBlockOnOpen(true);
converter.open();
Display.getCurrent().dispose();
}
}

不使用ApplicationWindow(即只是用SWT類)的解決方案:
復制代碼 代碼如下:

package swt_jface.demo;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
public class TemperatureConverter {

Display display = new Display();
Shell shell = new Shell(display);
Label fahrenheitLabel;
Label celsiusLabel;
Label messageLabel;
Text fahrenheitValue;
Text celsiusValue;
public TemperatureConverter() {

shell.setText("SWT Temperature Converter");
shell.setLayout(new GridLayout(4, false));
fahrenheitLabel = new Label(shell, SWT.NULL);
fahrenheitLabel.setText("Fahrenheit: ");
fahrenheitValue = new Text(shell, SWT.SINGLE | SWT.BORDER);
celsiusLabel = new Label(shell, SWT.NULL);
celsiusLabel.setText("Celsius: ");
celsiusValue = new Text(shell, SWT.SINGLE | SWT.BORDER);

messageLabel = new Label(shell, SWT.BORDER);
GridData gridData = new GridData(GridData.FILL_BOTH);
gridData.horizontalSpan = 4;
messageLabel.setLayoutData(gridData);
ModifyListener listener = new ModifyListener() {
public void modifyText(ModifyEvent e) {
valueChanged((Text) e.widget);
}
};
fahrenheitValue.addModifyListener(listener);
celsiusValue.addModifyListener(listener);
shell.pack();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
public void valueChanged(Text text) {
if (!text.isFocusControl())
return;
if (text == fahrenheitValue) {
try {
double fValue = Double.parseDouble(text.getText());
double cValue = (fValue - 32) / 1.8;
celsiusValue.setText(Double.toString(cValue));
System.out.println("F -> C: " + cValue);
messageLabel.setText("Conversion performed successfully.");
} catch (NumberFormatException e) {
celsiusValue.setText("");
messageLabel.setText("Invalid number format: " + text.getText());
}
} else {
try {
double cValue = Double.parseDouble(text.getText());
double fValue = cValue * 1.8 + 32;
fahrenheitValue.setText(Double.toString(fValue));
System.out.println("C -> F: " + fValue);
messageLabel.setText("Conversion performed successfully.");
} catch (NumberFormatException e) {
fahrenheitValue.setText("");
messageLabel.setText("Invalid number format: " + text.getText());
}
}
}
public static void main(String[] args) {
new TemperatureConverter();
}
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩人在线观看| 色中色综合影院手机版在线观看| 日韩有码在线播放| 欧美老女人www| 国产日韩精品视频| 成人免费视频在线观看超级碰| 国产精品pans私拍| 亚洲欧美视频在线| 亚洲а∨天堂久久精品喷水| 亚洲国产成人精品久久| 黄色一区二区在线| 日韩经典第一页| 国产一区在线播放| 日韩视频中文字幕| 91精品国产综合久久久久久蜜臀| 成人综合网网址| 亚洲视频axxx| 亚洲精品在线看| 81精品国产乱码久久久久久| 岛国av一区二区在线在线观看| 久久91亚洲精品中文字幕| 国模视频一区二区三区| 亚洲第一国产精品| 久久精品视频中文字幕| 日韩人在线观看| 中文字幕亚洲一区二区三区五十路| 国产精品视频白浆免费视频| 欧美日韩在线视频一区二区| 欧美激情精品久久久久久| 亚洲天堂av网| 国产精品日韩欧美大师| 欧美日韩激情视频| 亚洲人精选亚洲人成在线| 国产aⅴ夜夜欢一区二区三区| 欧美激情国产高清| 欧美小视频在线观看| 久久精品久久久久久国产 免费| 欧美色播在线播放| 97在线视频一区| 欧美激情视频给我| 51精品国产黑色丝袜高跟鞋| 亚洲精品在线看| 日韩美女视频免费看| 国产精品日日做人人爱| 欧美丝袜一区二区三区| 亚洲美女精品成人在线视频| 国产欧美精品一区二区三区介绍| 成人黄色午夜影院| 日韩一区二区av| 欧美精品videosex牲欧美| 久久精品国产久精国产思思| 日本久久久久久| 91探花福利精品国产自产在线| 亚洲国产精品美女| 国产精品一区二区久久精品| 国产亚洲精品va在线观看| 日韩av最新在线观看| 欧洲成人在线观看| 成人网在线免费看| 欧美激情一区二区三区成人| 欧美日产国产成人免费图片| 中文字幕在线看视频国产欧美在线看完整| 国产精品美女无圣光视频| 国产精品色婷婷视频| 另类视频在线观看| 国产成人精品电影| 韩日精品中文字幕| 色综合视频一区中文字幕| 欧美不卡视频一区发布| 岛国av一区二区三区| 日韩精品视频三区| 高清亚洲成在人网站天堂| 国产经典一区二区| 国产乱肥老妇国产一区二| 日韩黄色高清视频| 亚洲精品福利在线| 久久99国产综合精品女同| 亚洲视频日韩精品| 成人免费午夜电影| 久久综合伊人77777| 亚洲综合在线小说| 亚洲电影免费观看| 日韩专区中文字幕| 亚洲成人av在线| 一本大道久久加勒比香蕉| 91夜夜未满十八勿入爽爽影院| 亚洲自拍av在线| 国产精品永久免费在线| 国产一区二区三区视频在线观看| 国产精品视频yy9099| 欧美激情乱人伦| 91免费高清视频| 国产日韩中文在线| 欧美一区第一页| 中文字幕在线观看亚洲| 亚洲精品国产精品乱码不99按摩| 午夜精品在线视频| 亚洲高清免费观看高清完整版| 亚洲欧美制服另类日韩| 亚洲第一免费网站| 国产成人福利视频| 日本久久中文字幕| 丝袜美腿亚洲一区二区| 国产91网红主播在线观看| 亚洲成人激情在线观看| 欧美午夜视频一区二区| 国产欧美一区二区三区久久人妖| 精品在线观看国产| 日韩亚洲欧美中文高清在线| 欧美日韩国产色| 中文字幕日韩电影| 久久亚洲精品一区二区| 91精品国产91久久久久久久久| 欧美国产日产韩国视频| 26uuu亚洲伊人春色| 国产精品成人av性教育| 欧美日韩国产综合新一区| 色偷偷偷亚洲综合网另类| 日韩在线观看高清| 5252色成人免费视频| 欧美另类在线观看| 精品国产欧美一区二区三区成人| 神马国产精品影院av| 日韩中文在线视频| 久久久久九九九九| 555www成人网| 久久久免费观看视频| 久久人体大胆视频| 日韩一级黄色av| 成人精品aaaa网站| 欧美日韩精品中文字幕| 91美女片黄在线观| 高潮白浆女日韩av免费看| 欧美日韩国产成人在线观看| 亚洲最大中文字幕| 国产一区二区三区毛片| 欧美电影免费观看网站| 久久久伊人欧美| 91国产精品91| 精品亚洲一区二区三区在线观看| 97超碰蝌蚪网人人做人人爽| 欧美精品做受xxx性少妇| 亚洲国产精品中文| 国产日韩欧美在线观看| 欧美大片在线免费观看| 国产精品专区h在线观看| 成人亚洲欧美一区二区三区| 性色av一区二区三区在线观看| 日韩高清不卡av| 久久久国产在线视频| 日韩av免费看| 亚洲国产精彩中文乱码av在线播放| 亚洲另类欧美自拍| 国产成人精品一区二区三区| 日本亚洲欧美三级| 国产精品福利片| 一区二区三区四区在线观看视频| 亚洲国产古装精品网站| 精品国产一区二区三区久久狼黑人| 国产欧美一区二区三区四区| 夜夜狂射影院欧美极品| 1769国内精品视频在线播放| 亚洲女人天堂av| 亚洲精品一二区|