2014-06-17 152 views
1

我开发了一个用于天气测量的arduino项目,并且我使用了gui的visual basic。 一切工作正常与量表,数据库连接和其他的东西!现在我想尝试我的缺点,并在java中写入相同的东西。我写了一个带有串行通信的小型gui,并以jlabels显示传入的数据。但是现在我想在这里使用量表......他们看起来很酷!我发现了很棒的钢铁系列,但我不知道从哪里开始。我已经在我的项目中导入了库和junit,但是现在我在java和eclipse中是盲目的,新的。对于gui,我使用了窗口构建器插件。有没有人知道如何开始使用图书馆?Java SteelSeries Library分步指南

谢谢!

回答

2

您可以在Harmonic Code上找到许多SteelSeries测量仪的示例。如果你是Swing的新手,那么从Swing tutorials开始。

下面是演示如何创建一个简单的表和它的值设置一个非常简单的例子:

enter image description here

import java.awt.BorderLayout; 
import java.awt.Dimension; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JLabel; 
import javax.swing.JPanel; 
import javax.swing.JTextField; 
import javax.swing.SwingUtilities; 
import eu.hansolo.steelseries.gauges.Radial; 


public class TestGauge { 
    private static void createAndShowUI() { 
     final JFrame frame = new JFrame(); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.setLocationByPlatform(true); 

     JPanel panel = new JPanel() { 
      @Override 
      public Dimension getPreferredSize() { 
       return new Dimension(300, 300); 
      } 
     }; 

     final Radial gauge = new Radial(); 
     gauge.setTitle("Demo title"); 
     gauge.setUnitString("Some units"); 

     panel.setLayout(new BorderLayout()); 
     panel.add(gauge, BorderLayout.CENTER); 
     frame.add(panel); 

     JPanel buttonsPanel = new JPanel(); 
     JLabel valueLabel = new JLabel("Value:"); 

     final JTextField valueField = new JTextField(7); 
     valueField.setText("30"); 
     JButton button = new JButton("Set"); 
     button.addActionListener(new ActionListener(){ 
      @Override 
      public void actionPerformed(ActionEvent e) { 
       try { 
        double value = Double.valueOf(valueField.getText()); 
        gauge.setValueAnimated(value); 
       } catch(NumberFormatException ex) { 
        //TODO - handle invalid input 
        System.err.println("invalid input"); 
       } 
      } 
     }); 

     buttonsPanel.add(valueLabel); 
     buttonsPanel.add(valueField); 
     buttonsPanel.add(button); 

     frame.add(buttonsPanel, BorderLayout.NORTH); 

     frame.pack(); 
     frame.setVisible(true); 
    } 

    public static void main(String[] args) { 
     SwingUtilities.invokeLater(new Runnable() { 
      public void run() { 
       createAndShowUI(); 
      } 
     }); 
    } 
} 
+2

我爱谐波代码+1 – MadProgrammer

+0

非常感谢您!这个例子是一个非常好的入门点!现在我已经在我的gau :) – user3572380