我正在使用JAVAFX进行聊天应用程序,我希望聊天消息以气泡形式显示。谁能向我解释怎么办? 我知道我需要在3个图像中使用泡泡 - 对于顶部,底部和中间,这取决于消息的行数。但这都是理论。我不知道如何在JAVAFX中的textArea上实现它。 如果有人能帮助我,我将不胜感激。
答案 0 :(得分:1)
如果您知道气泡的宽度和字体的大小,您可以通过一些逻辑来确定将有多少行,因为您将知道一行中适合的字符数。例如,如果该行包含10个字符(为了便于数学运算;我确定它还有更多),那么您可以执行以下操作:
public static void main(String[] args)
{
String in = new String("blahblahblahblahblahblahblahblahblahblahblahblahblahblah");
System.out.println("length is " + in.length());
int charCount = in.length();
int allowedCharsOnLine = 10;
int extraChars = charCount - (allowedCharsOnLine*2);
System.out.println("extra chars is " + extraChars);
int numberOfMiddleSections = (extraChars)/allowedCharsOnLine;
System.out.println("You need " + numberOfMiddleSections + " middle sections");
}
将它放在java类中并运行它以查看我正在谈论的内容。 String in当然来自您的用户输入。你可能想让allowedCharsOnLine成为最终的类级别变量,但我只是把它放在那里以方便阅读。