SWT(JFace)体验之Slider,Scale

所属分类: 软件编程 / Java编程 阅读数: 146
收藏 0 赞 0 分享
Slider:
复制代码 代码如下:

package swt_jface.demo8;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Slider;
import org.eclipse.swt.widgets.Text;
public class SampleSlider {

Display display = new Display();
Shell shell = new Shell(display);
Slider slider;
Text value;

public SampleSlider() {

shell.setLayout(new GridLayout(1, true));

Label label = new Label(shell, SWT.NULL);
label.setText("Volume:");

slider = new Slider(shell, SWT.VERTICAL);
slider.setBounds(0, 0, 40, 200);
slider.setMaximum(24);
slider.setMinimum(0);
slider.setIncrement(1);
slider.setPageIncrement(5);
slider.setThumb(4);
slider.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event event) {
int perspectiveValue = slider.getMaximum() - slider.getSelection() + slider.getMinimum() - slider.getThumb();
value.setText("Vol: " + perspectiveValue);
}
});

value = new Text(shell, SWT.BORDER | SWT.SINGLE);
value.setEditable(false);
slider.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_CENTER));
value.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_CENTER));
shell.pack();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
public static void main(String[] args) {
new SampleSlider();
}
}

Scale:
复制代码 代码如下:

package swt_jface.demo8;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Scale;
import org.eclipse.swt.widgets.Shell;
public class Scales {

Display display = new Display();
Shell shell = new Shell(display);
public Scales() {

Scale scaleH = new Scale(shell, SWT.NULL);
Scale scaleV = new Scale(shell, SWT.VERTICAL);

scaleH.setBounds(0, 0, 100, 50);
scaleV.setBounds(0, 50, 50, 100);

System.out.println("Min: " + scaleH.getMinimum());
System.out.println("Max: " + scaleH.getMaximum());
shell.pack();
shell.open();

while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
public static void main(String[] args) {
new Scales();
}
}
package swt_jface.demo8;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Scale;
import org.eclipse.swt.widgets.Shell;
public class Scales {

Display display = new Display();
Shell shell = new Shell(display);
public Scales() {

Scale scaleH = new Scale(shell, SWT.NULL);
Scale scaleV = new Scale(shell, SWT.VERTICAL);

scaleH.setBounds(0, 0, 100, 50);
scaleV.setBounds(0, 50, 50, 100);

System.out.println("Min: " + scaleH.getMinimum());
System.out.println("Max: " + scaleH.getMaximum());
shell.pack();
shell.open();

while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
public static void main(String[] args) {
new Scales();
}
}

再看一个演示:

复制代码 代码如下:

package swt_jface.demo8;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Scale;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
public class ScaleExample {

Display display = new Display();
Shell shell = new Shell(display);
Scale scale;
Text value;

public ScaleExample() {

shell.setLayout(new GridLayout(1, true));

Label label = new Label(shell, SWT.NULL);
label.setText("Volume:");

scale = new Scale(shell, SWT.VERTICAL);
scale.setBounds(0, 0, 40, 200);
scale.setMaximum(20);
scale.setMinimum(0);
scale.setIncrement(1);
scale.setPageIncrement(5);
scale.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event event) {
int perspectiveValue = scale.getMaximum() - scale.getSelection() + scale.getMinimum();
value.setText("Vol: " + perspectiveValue);
}
});

value = new Text(shell, SWT.BORDER | SWT.SINGLE);
value.setEditable(false);
scale.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_CENTER));
value.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_CENTER));
shell.pack();
shell.open();

while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
public static void main(String[] args) {
new ScaleExample();
}
}
更多精彩内容其他人还在看

常用数据库的驱动程序及JDBC URL分享

这篇文章主要介绍了常用数据库的驱动程序及 JDBC URL,需要的朋友可以看下
收藏 0 赞 0 分享

jackson使用@JsonSerialize格式化BigDecimal解决.00不显示问题

这篇文章主要介绍了jackson使用@JsonSerialize格式化BigDecimal解决.00不显示问题,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Java编程实现中英混合字符串数组按首字母排序的方法

这篇文章主要介绍了Java编程实现中英混合字符串数组按首字母排序的方法,涉及Java字符串操作及拼音转换的相关使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

详解JAVA类加载机制(推荐)

这篇文章主要介绍了JAVA类加载机制的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

常用Java排序算法详解

本文主要介绍了java的七种常见排序算法的实现,对选择排序、插入排序、冒泡排序、归并排序、快速排序、希尔排序、最小堆排序进行原理分析与实例介绍,具有很好的参考价值。下面就跟着小编一起来看下吧
收藏 0 赞 0 分享

浅谈java中的对象、类、与方法的重载

本文主要对java中的对象、类、与方法的重载进行简要概述,具有一定的参考价值,需要的朋友一起来看下吧
收藏 0 赞 0 分享

详解Http请求中Content-Type讲解以及在Spring MVC中的应用

这篇文章主要介绍了Http请求中Content-Type讲解以及在Spring MVC中的应用的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

JSP request.setAttribute()详解及实例

这篇文章主要介绍了 javascript request.setAttribute()详解及实例的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Java 回调函数详解及使用

这篇文章主要介绍了Java 回调函数详解及使用,附有简单实例,需要的朋友可以参考下
收藏 0 赞 0 分享

java中Cookie被禁用后Session追踪问题

这篇文章主要介绍了Java中Cookie被禁用后Session追踪问题,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多