Q
定制一个复选框
1
A
回答
3
您可以使用以下方法: Create a custom button with SWT
为出发点。在PaintListener
内,您可以按照您希望的方式绘制按钮。
这里是一个小例子我只是想:
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.PaintEvent;
import org.eclipse.swt.events.PaintListener;
import org.eclipse.swt.widgets.Canvas;
import org.eclipse.swt.widgets.Composite;
public class ImageButton extends Canvas {
private boolean checked = false;
private final ImageButton button = this;
public ImageButton(Composite parent, int style) {
super(parent, style);
this.addPaintListener(new PaintListener() {
@Override
public void paintControl(PaintEvent e) {
if(checked)
{
e.gc.drawImage(Icons.ON, 0, 0);
}
else
{
e.gc.drawImage(Icons.OFF, 0, 0);
}
button.setSize(WIDTH_OF_IMAGE, HEIGHT_OF_IMAGE);
}
});
this.addMouseListener(new MouseAdapter() {
@Override
public void mouseUp(MouseEvent e) {
checked = !checked;
redraw();
}
});
}
}
其中Icons.ON
和Icons.OFF
是两个图像和WIDTH_OF_IMAGE和HEIGHT_OF_IMAGE是使用图像的宽度和高度。
2
+0
我知道......但我仍然更喜欢我的:https://github.com/germantech/ios-widgets :) – 2012-08-30 11:30:10
相关问题
- 1. 复制复选框选定值从一个div到另一个div
- 2. JQuery将选择框中的选定框从一个选择框复制到另一个选择框
- 3. 的Android定制复选框
- 4. 限制 - 只检查一个复选框
- 5. 限制复选框为一个html javascript
- 6. jQuery的控制从一个复选框
- 7. 绘制一个复选框在TListView的
- 8. 只选一个复选框
- 9. 定制的组合框复选框
- 10. 从定制的复选框删除框
- 11. 强制动态生成的复选框只允许选择一个复选框
- 12. 强制特定复选框选择
- 13. WPF C#复选框控制一个定时器
- 14. 确定在一组复选框中选中的复选框
- 15. 选择一个复选框,选择其他复选框
- 16. UncheckAll /勾选复选框时,另一个复选框被选中
- 17. Jquery选中一个复选框时选中所有复选框
- 18. 如何将选中的复选框从一个表复制到另一个表
- 19. 如果一个复选框列表中的特定复选框被选中
- 20. Tkinter复选框依赖关系(不能选中一个复选框而不选另一个复选框)
- 21. 强制一个或多个复选框被选中
- 22. CSS自定义复选框,并定制单选框
- 23. 如何将一个复选框状态从一个复制到另一个
- 24. 两个复选框位于一个复选框列表中
- 25. 复选框::一次只能选一个
- 26. 从2列复选框中选择一个复选框
- 27. 选择所有复选框由一个复选框不工作
- 28. 当在JavaScript中选择一个复选框创建复选框
- 29. Datagridview复选框列只允许我选择一个复选框
- 30. 如果一个复选框被选中,如何取消另一个复选框?
谢谢你,我来试试:) – 2012-07-12 17:19:37
工作相当well..I'll保持在寻找一种方式,使其“绑定”到JFace现在:d – 2012-07-12 18:00:59
不客气。 – Baz 2012-07-12 18:01:25