草庐IT

java - 如何计算 JTextArea 中的行数,包括由换行引起的行数?

我有一个JTextArea,我已将word-wrap和wrap-style-word设置为true。在给定指定宽度的情况下,我想将JTextArea“打包”到可能的最小高度。为此,我计划使用...计算字体的高度Fontfont=jTextArea.getFont();FontMetricsfontMetrics=jTextArea.getFontMetrics(font);intlineHeight=fontMetrics.getAscent()+fontMetrics.getDescent();...然后将其乘以JTextArea中使用的行数。问题是JTextArea.getLine

Java JNI : Creating a Swing Window using JNI from C

我正在使用JNI调用一个静态java方法,该方法又创建一个SwingJFrame并显示它。代码相当简单,Java代码独立运行(即javaStartAWT做它应该做的事),而当使用JNI从C调用时,进程挂起。我在MacOSX10.8MountainLion上使用JDK1.7.0_09。这是我用来调用静态方法的C代码:JavaVM*jvm;JNIEnv*env=create_vm(&jvm);jclassclass=(*env)->FindClass(env,"StartAWT");jmethodIDmethod=(*env)->GetStaticMethodID(env,class,"r

java - 如何将 Java 2D Shape 对象序列化为 XML?

Shape接口(interface)由Java2D对象实现(Arc2D,Area,CubicCurve2D,Ellipse2D、GeneralPath等)。一些具体对象被标记为Serializable,可以使用对象序列化来存储和恢复,但其他如Area没有实现接口(interface)并抛出错误。但由于我们不断被警告这种天真的序列化在Java实现或版本中不一定是稳定的,所以我更愿意使用某种形式的序列化。这导致我们使用XMLEncoder和XMLDecoder从XML存储/恢复,但它能够处理更少的Java2DShape对象。两者的部分结果如下所示。我们从6个形状开始,并尝试通过对象序列化和

java - 如何制作 Java.awt.Robot 类型的 unicode 字符? (可能吗?)

我们有一个用户提供的字符串,其中可能包含unicode字符,我们希望机器人键入该字符串。如何将字符串转换为机器人将使用的keyCodes?你是怎么做到它也是Java版本独立的(1.3->1.6)?我们为“ascii”字符工作的是//charc=nextChar();//charc='a';//thisworks,andsodoes'A'charc='á';//thisdoesn't,andneitherdoes'Ă'Robotrobot=newRobot();KeyStrokekey=KeyStroke.getKeyStroke("pressed"+Character.toUpperC

java - 如何在 AWT 中围绕文本绘制轮廓?

我如何在AWT中围绕任何文本绘制轮廓,类似于这张图片? 最佳答案 两个例子FontandAffineTransformFont,TextLayoutandAffineTransform此绘制的输出将是BufferedImage,对于AWT组件使用方法paint(),对于SwingJComponents有paintComponet()此外,来自评论中链接的代码: 关于java-如何在AWT中围绕文本绘制轮廓?,我们在StackOverflow上找到一个类似的问题:

java - 如何通过点制作直线曲线

我正在寻找一种通过多个点制作直线曲线的方法。最好使用3个点,尽管我认为为了给进入点的线的角度提供上下文,可以说可能需要更多来为曲线提供上下文。一般一个起点P1,一个控制点P2,一个终点P3,直线应该从P1弯到P2,再从P2弯到P3。事实上,这是我想要达到的效果的完美示例:如果我能做到这一点,我将永远感激不尽!到目前为止,在Java中,我尝试使用诸如QuadCurve2D.Double之类的东西。,CubicCurve2D.Double还有Path2D.Double(将curveTo与Path2D.Double一起使用)但无济于事-绘制的曲线甚至没有接近通过指定的控制点。这是我迄今为止尝

解决Dockerfile中 Could not initialize class sun.awt.X11FontManager错误

Dockerfile中增加命令RUNyuminstalldejavu-sans-fontsfontconfig-y如果您使用的是基于AlpineLinux的发行版,可以使用apk命令来安装DejaVuSans字体和fontconfig工具RUNapkupdateRUNapkaddttf-dejavufontconfig

【了解Java GUI编程】AWT和Swing的基本用法

GUI:GraphicalUserInterface,图形用户界面,指在计算机出现后,在屏幕上使用图形界面来帮助用户(User)与机器(Machine)打交道用的界面接口(Interface)。简单地理解,就是电脑打开的各个界面及弹窗,用户可进行鼠标、键盘等操作。目录一、AWT1.1组件和容器1.1.1AWT常用组件1.1.2常用的容器1.2布局管理器1.3事件监听1.4简易计算器的应用案例 二、Swing 2.1 JDialog弹窗2.2 图标2.2.1Icon图标2.2.2 ImageIcon图像图标 2.4Panel面板 2.4按钮2.4.1JButton图片按钮2.4.2JRadioB

Java报错exception in thread awt-eventqueue-0这个怎么解决呀

publicvoidactionPerformed(ActionEvente){ flag=0;   try{  Stringnum,name,gender,address,phone,major;  con=DriverManager.getConnection("jdbc:mysql://localhost:3306/university?characterEncoding=utf8","root","123456");  num=t1.getText().trim();  ResultSetrs=sql.executeQuery("SELECT*FROMstudentWHEREid='"

Android 中的 java.awt.Point 类

我想将java.awt.Point更改为一些可以替代它的类似类。这对我来说是一个非常困难的问题,因为DalvikVM无法解析AWT类,但给定的java算法使用它。确切的错误信息:Pointcannotberesolvedtoatype我也尝试过从java.util导入类,但没有成功。 最佳答案 Android不支持AWT。它也不支持Swing。它有它自己的图形Material。您可以改用的类是android.graphics.Point,当坐标为整数时,或android.graphics.PointF,当坐标类型为float时。在您