【Java Swing应用程序中的次要重构导致巨大的减速】教程文章相关的互联网学习教程文章

Java Swing Graphics2D drawString启动缓慢?【代码】

我遇到了Java Graphics2D绘制String的非常奇怪的行为. 如果我设置了字体名称,例如Font f = new Font("Helvetica", Font.PLAIN, 10);然后,在屏幕设备上,第一次调用g2D.drawString可能要花费600毫秒.这会产生屏幕卡纸,虽然不明显,但很烦人. 将字体名称切换为默认值(例如“ Monospaced”)将解决此问题. 有人遇到过类似的问题吗?解决方法:发生这种情况的原因是,您正在Paint方法中加载了Font(第一次绘制字符串时),这是一件不好的事.如果...

如何在Java Swing应用程序上嵌入QWebView(QtJambi)?

是否可以使用QWebView在Windows,Mac和Linux上的Java Swing应用程序中呈现HTML5页面? 基本上,我希望有类似http://qupzilla.com的东西,但是对于Java.解决方法:我认为在Swing中使用QWebView并不容易. 如果您只想在Java Swing应用程序中呈现HTML 5,则可能更容易使用JavaFX的WebView(基于WebKit).您可以使用JFXPanel将JavaFX的WebView添加到您的Swing应用程序. 还有MozSwing(适用于Java的Firefox绑定). 如果只需要XHTML CSS3,则可以看一...

如何在Java Swing中获取工具提示文本字符串的宽度?【代码】

我有以下几行内容来获取JList项目的工具提示文本:JList aList=new JList(aData) {public String getToolTipText(MouseEvent evt) // This method is called as the cursor moves within the list.{String tooltipText="Some tooltip";int tooltipWidth= ?return tooltipText;} }在getToolTipText()中,如何获取tooltipText宽度?解决方法:I form my tooltip in html like this : "<html>first line<Br>========<Br>second line</h...

java-swing的事件并存使用

使用键盘事件、点击事件等事件时,有些注意点: 使用键盘事件时:如:在JPanel面板中设置了键盘事件KeyListener,一定需要添加this.setFocusable(true);,让焦点可以在面板上使用。 使用其他的事件,不需要写this.setFocusable(true); 多个事件并存时:由于焦点的问题,会导致一些事件会失效。如:同时使用了KeyListener键盘事件、ActionListener点击事件,会导致其中的某个事件失效,需要在创建事件的面板上添加this.requestF...

在Java Swing中创建可扩展的方格边距

我需要编写必须绘制图形的程序..我将Java与swing配合使用(如果您认为swing是不好的决定,请提供其他工具)..我的老师说我必须在方格上绘制图形,但我没有.不知道在这种情况下有什么用.如果有人这样做,请帮助我.如何使此方格保证金(我的老师对我说,该方格保证金必须是可扩展的) 更新 哦,我忘了说我自己绘制图形(设置2个点,然后我的函数必须在这些点之间绘制线)解决方法:作为参考,MyPanel在其背景中绘制了一个灰色棋盘; SineTest显示了...

java-我的Swing GUI不更新.为什么?【代码】

因此,我正在制作一个GUI,用户可以在其中添加或删除面板.为了模拟这一点,我制作了一个TimerTask,它使用了目标JPanel的名称以及包含JPanel的父级的名称.它倒计数到0,然后从父级中删除JPanel,并在父级和祖父母级上调用repaint(). 尽管删除了旧面板,但父面板中包含的其他组件却没有被取代.在图片中可以看到,滚动条仍指示2个组件. 我必须手动向下拖动滚动条才能看到它的变化,也就是当下面的组件抬起位置时. 为什么会这样呢? 这是组件的...

有什么办法可以从Eclipse访问Java Swing帮助

有什么方法可以使Java Swing帮助/文档在Swing项目上方浮动时出现在Eclipse中.这样可以节省大量时间来进行Google搜索.解决方法:首先为您的jre下载相应的文档,我有7个,所以我会得到this one.(您也可以使用在线方法,但是这种方式更快,可以离线使用) 打开Eclipse并转到Window>偏好设置> Java>已安装的JRE.然后,您可以选择要使用的jre,然后单击“编辑”. 从JRE系统库中选择所有.jar项,然后单击Javadoc Location …,在存档中打勾Javadoc,...

java-Source Sans Pro的TTF和OTF版本在Swing(Nimbus L&F)中的显示方式有所不同【代码】

ttf: OTF: 两者都是相同的字体,但字体文件类型不同 我在Windows 7中运行Java 7 根据Adobe的Miguel Sousa的说法,该错误不在字体中https://github.com/adobe/source-sans-pro/issues/32#issuecomment-23319673 我只是将默认字体设置为新字体. TTF版本可以正常使用Font font_o = Font.createFont(Font.TRUETYPE_FONT, fonts.class.getResourceAsStream("fonts/TTF/SourceSansPro-Regular.ttf")); //Font font_o = Font.createFont(F...

java-SwingWorker线程可重用性【代码】

我不知道重复执行某些任务时Java SwingWorker及其线程池如何工作.这是准备复制粘贴的问题的SSCCE:package com.cgi.havrlantr.swingworkerexample;import java.awt.*;import javax.swing.*;public class Main extends JFrame {public static void main(String[] args) {java.awt.EventQueue.invokeLater(new Runnable() {public void run() {new Main().setVisible(true);}});}public Main() {setDefaultCloseOperation(javax.swin...

java-SwingWorker,取消按钮不起作用【代码】

我有一个带有“开始”和“停止”按钮的窗口.开始按钮将启动算法,停止按钮应将其停止.我使用SwingWorker在后台运行算法,并且通常调用worker.cancel(true)应该停止算法运行.我也有一个标签,可以可视化状态,例如如果我按“停止”,则Labeltext更改为“已停止”,因此问题不在按钮的actionLister上. 我的代码如下所示:public class MainWindow extends JFrame implements ActionListener, WindowListener {// Some code, like generatin...

Java Swing在MigLayout中添加图像代码似乎不起作用?【代码】

因此,我有自己的自定义JFrame,并尝试在其中创建自动调整大小的图像,以将其包含在JFrame的内容JPanel frameContent中.我的JPanel布局管理器是MigLayout,因此我想再创建一个JPanel子级,称为ImagePanel.这是我的ImagePanel类最终的样子:class ImagePanel extends JPanel{private static final long serialVersionUID = -5602032021645365870L;private BufferedImage image;public ImagePanel() {try { image = ImageI...

Java-非法前瞻参考Netbeans swing【代码】

我正在用netbeans摇摆创建一个GUI.在设计GUI中,netbeans在程序末尾实例化了所有无法操作的变量.现在,我想获取Jtextfield数据并将其放在String对象中.假设netbeans将我的JTextField变量创建为jTextField1,如果我这样做了 开头的字符串名称= jTextField1.getText() 它显示了非法前向引用的错误,如果我尝试在程序结尾(在所有netbeans声明之后)定义此错误,则会引发数百万个异常. 那么,我该怎么做才能声明此字符串对象并在变量中检索get...

java-使用SwingWorker / Swing跟踪wget(bash)的进度【代码】

我正在尝试制作gui,以便用户能够下载文件.目前,我可以通过一个过程调用wget命令,但是我正在努力将它与swingworker一起使用. 我将如何同时跟踪gui的下载和更新进度? 目前,我已尝试使用此方法:ShellProcess.command("wget --progress=dot "+_url);命令是创建过程的方法:InputStream stdout = _process.getInputStream();BufferedReader stdoutBuffered =new BufferedReader(new InputStreamReader(stdout));String line = null;St...

Java Swing EDT:如何通过SwingUtilities.invokeAndWait知道哪些线程正在等待EventDisplay的执行?【代码】

我有一个非常复杂的问题.在当前的项目中,我有一个用Java编写的GUI和一个用C编写的计算引擎. 这些是Java中的显示,可以访问C中的数据,并且我在并发方面遇到一些问题. 这段代码有很长的一段话,所以我不能只重写所有内容(即使偶尔需要它:p). 引擎修改数据时,将获取互斥量.从这边来看很干净. 问题是GUI.它是Java Swing,它可以不受任何控制地从EventDispatchThread或任何线程访问数据,并通过对内核的每次统一访问来获取c互斥锁(通过JNI)...

java-Swing-布局管理器出现问题【代码】

我正在尝试使用Java Swing制作聊天应用程序,但聊天气泡遇到了麻烦.我设法做起泡的部分,但似乎无法正确放置它们.这是我的代码package messagebubble;import java.awt.BorderLayout;import javax.swing.BoxLayout; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextArea;import messagebubble.RoundedBorder;public class Main {public static void main(String[] args) {JFrame window = new JFrame...

SWING - 相关标签