我有一个Java程序,我在其中使用TTS(文本到语音),在那里我想要一个动画gif出现在屏幕上。我使用的是Netbeans GUI构建器,所以我创建了一个新的jpanel form
,并将gif
添加到该表单(java jpanel表单)的标签中,之后我将此java作为jpanel添加到我的主java文件中(通过拖放)。但问题是,只要TTS开始说话,就会停止gif的动画。如何使它一起工作? 注:我使用的FreeTTS转换文本到语音多个线程不能同时工作
代码:
private static final String VOICENAME = "kevin16";
VoiceManager voiceManager = VoiceManager.getInstance();
.....
........
Voice voice;
voice = voiceManager.getVoice(VOICENAME);
voice.allocate();
....//Some code here
t4.setText("" + ran);
voice.speak(t4.getText());
listenanum.setText("" + d);
listenanum.setVisible(false);
Downvoter Care请发表评论吗? –
我们错过了几个部分:“您的TTS使用哪种API和实现?”和“你怎么调用TTS?”。特别是,如果您从Swing UI线程调用TTS,并且您的TTS API在线程发言时阻塞线程,则UI中的任何内容都不会更新 - 如果是这种情况,您需要在不同的线程上讲话。 –
@ErwinBolwidt我不知道你写的是什么,但我会尽我所能给你提供这些信息,我会展示我正在做的代码TTS –