- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望调整在“MyPanel”类下第 75 行绘制的线条的粗细,您可以在评论中找到它。我这个程序的总体目的是当单击按钮时在屏幕上绘制字母。谢谢
public class Painttest extends JFrame {
private Timer timer;
private JPanel panel1, panel2;
private MyPanel center;
private MyButton stop, A, B;
public Painttest() {
this.setSize(650, 700);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setResizable(false);
panel1 = new JPanel();
panel2 = new JPanel();
center = new MyPanel();
center.setBackground(Color.cyan);
stop = new MyButton("Stop");
stop.setName("stop button");
A = new MyButton("A");
A.setName("A Button");
B = new MyButton("B");
B.setName("B Button");
panel1.add(A);
panel1.add(B);
panel2.add(stop);
this.add(panel1, BorderLayout.WEST);
this.add(center, BorderLayout.CENTER);
this.add(panel2, BorderLayout.EAST);
timer = new Timer(50, center);
this.setVisible(true);
System.out.println(center.getSize()); // size of center panel
}
public static void main(String[] args) {
new Painttest();
}
///////////////////////////////////////////////////////////////////////
// MyPanel class : This panel will be used to draw on
////////////////////////////////////////////////////////////////////////
private class MyPanel extends JPanel implements ActionListener {
private int startingx, startingy;
private int endingx, endingy;
MyPanel() {
startingx = 110;
startingy = 330;
endingx = startingx ;
endingy = startingy ;
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
// g.fillOval(startingx, startingy, 30, 30);
g.drawLine(startingx, startingy, endingx,endingy); // draws a single line
}
@Override
public void actionPerformed(ActionEvent e) {
startingx = startingx + 1;
startingy = startingy - 3;
repaint();
}
}
///////////////////////////////////////////////////////////////////////
// MyButton class : When Clicked, I want it to draw something on the MyPanel (center)
////////////////////////////////////////////////////////////////////////
private class MyButton extends JButton implements ActionListener {
String name;
MyButton(String title) {
super(title);
addActionListener(this);
name = "NOT SET";
}
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("Pressed a button " + name);
////////////////////////////////////
// if Statements to control the timer
////////////////////////////////////
// STOP TIMER
if (e.getSource() == stop) {
timer.stop();
}
if(e.getSource() == A){
timer.start();
}
if(e.getSource() == B){
timer.start();
}
}
public void setName(String newname) {
name = newname;
}
public String getName() {
return name;
}
}
}
最佳答案
修改你的paintComponent方法,如下所示:
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.setStroke(new BasicStroke(6.0F));
// g.fillOval(startingx, startingy, 30, 30);
g2d.drawLine(startingx, startingy, endingx, endingy);
}
您可以设置各种笔划。基本笔划是一条粗实线。
关于java - 如何调整从 g.drawLine() 方法绘制的线条的粗细,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27847099/
我有一个格式良好的单元格范围,具有不同的边框线粗细(其中一些是中等厚度,其中一些是薄的,没有特定的图案)。我想运行一个将边框颜色更改为灰色的宏,但每次执行此操作时,它都会自动将所有边框粗细更改为 xl
我可以使用百分比使我的图像/div 具有响应性。 如何使字体大小响应不同的屏幕大小? 最佳答案 我最近偶然发现了这个问题,并为此编写了一个适合我需要的解决方案。也许您会发现您也可以将它合并到您的 CS
在 iOS 8 中,为了获得 Helvetica Neue 的细变体,以下代码可以工作 UIFont.systemFontOfSize(50, weight: UIFontWeightThin) 在
我想将 matplotlib 绘图中使用的默认字体更改为 Windows 下的 Segoe UI。我可以通过像这样改变 rcParams 来做到这一点 import matplotlib matplo
我想知道是否有人知道基于 Bresenham 的线算法或任何类似算法绘制具有特定粗细的线的任何算法。 再想一想,我一直在想,对于每个 setPixel(x,y) 我只是画一个圆圈,例如: filled
我正在尝试自定义我已经拥有的用于选择 Google 字体和更新预览 DIV 的功能之一,但是我还想添加“字体大小”、“字体粗细”、“字母间距”等,但是此功能仅在您单击“主字体选择器”组合框时才有效,我
我正在使用 RaphaelJS 在 IE8 中调试一些性能问题。我们正在 raphael 中从大约 1000 个元素和文本节点构建图形,特别是一个图形在渲染时给我们带来了问题。在 IE9 中,根据机器
我是一名优秀的程序员,十分优秀!