java 模拟吉他

来源:百度知道 编辑:UC知道 时间:2024/06/02 17:28:43
如何用mouse来弹吉他的六条线?以下是我篇写的,不过那六条线不敏感。有什么办法改进吗? 谢谢!

import javax.sound.midi.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class Testing extends JFrame {

MidiChannel mc;
int dx, dy;

public void paint(Graphics g)
{
g.drawLine(0, 121, 1280, 121);
g.drawLine(0, 242, 1280, 242);
g.drawLine(0, 363, 1280, 363);
g.drawLine(0, 484, 1280, 484);
g.drawLine(0, 605, 1280, 605);
g.drawLine(0, 726, 1280, 726);

}

public static void main(String[ ] args) throws MidiUnavailableException

{

Synthesizer synthesizer = MidiSystem.getSynthesizer( );
synthesizer.open( );
JFrame frame = new Testing(synthesizer);

frame.setSize(1280, 800);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);

}

我试了,挺有意思,我是玩琴的,音不对啊~~~~
我不知道你的目的是什么,大体是这么回事儿,
但是鼠标只要越过琴弦就会触发midi 不理想。
如果要是敏感了,拨完 1 弦再拨 6 弦,更头痛。

百度Hi群:1010489 【 Java/J2EE技术交流】
QQ : 444 852 718 【布尔】

交个朋友交流一下。

可以给mouse加个虚拟的碰撞体积,这样mouse接近一个线就可以触发它,而不用像素碰上。。