jjzjj

c++ - Qt - 调整大小时避免白色背景(立即设置背景色)

问题在末尾以粗体显示,因此请通读整篇文章。我有一个QAbstractScrollArea小部件,我在OnPaint()事件中手动完全渲染它。我在它的构造函数中设置setAttribute(Qt::WA_OpaquePaintEvent,true);setAttribute(Qt::WA_NoSystemBackground,true);setStyleSheet("QWidget{background-color:rgb(0,0,77);}");绘画事件看起来像这样:voidMyArea::paintEvent(QPaintEvent*event){QPainterview(viewp

c# - 使用 C# 像写字板一样嵌入 mspaint

我刚刚看了看写字板。有一个名为“插入画图”的功能区按钮。当我单击该按钮时,mspaint会打开并提示我绘制一些东西。画完东西后,我可以单击“更新文档”按钮。没有保存选项(只有“将副本另存为”)。此外,没有退出按钮。相反,它显示一个“退出并返回文档”按钮。现在我的问题是:我是否以及如何从我的C#桌面应用程序中的此功能中获益?我想到了一些IPC,但我无法弄清楚它是如何工作的。有人有想法吗? 最佳答案 这称为OLE(对象链接和嵌入)。您正在将MicrosoftPaint文档嵌入到写字板文档中。自Windows95以来,这项技术就已存在。.

c# - 我应该为每个 Paint 请求创建新的 Pens/Brush 还是在整个应用程序生命周期中保留它们?

我有一个可以大量绘图的应用程序,我们假设它是一个类似Viso的应用程序。它的对象具有多个绘制的子对象,可以连接事物、调整大小等。目前,当我在特定的子对象或对象上调用绘画时,我会执行以下操作:using(varpen=newPen(this.ForeColor)){//Paintforthisobject.}我读过相互矛盾的答案,认为应该为不断绘制相同内容(可能只是调整大小、移动等)的应用程序完成此操作。我应该将Pen/Brush与对象一起存储,然后在处理应用程序时将它们全部处理掉,还是它们的效率足以为每个绘制调用创建/处理(请记住,这是一个图形密集型应用程序)。编辑:已经有两个答案相互

javascript - 如何溢出:隐藏;和容器上的border-radius会导致容器内 “Paint/Render Layer”的大量减速,仅在IE上?

仅当该小部件托管在某个页面上时,我才一直在以HTML/SVGjavascript驱动的小部件中的IE(包括IE11在内的所有版本)上的不良性能上遇到很多麻烦。确定减速的主要原因是重新绘制Paint/Render层和exhaustingtheinformationabouttheseIcouldgetoutofIEDeveloperTools之后,我尝试反复尝试一次关闭祖先类,直到性能得到提高;然后,在识别类时,一次关闭一个样式规则。我的整个问题似乎都归结为在距离树数div的祖先上的一个overflow:hidden;规则。它产生的差异是令人难以置信的:通过在树上添加overflow:h

java - 如何在 JPanel 中使用 paint 方法

我正在用Java开发老虎机,到目前为止我创建了一个按钮,它会随机生成两张图片。我的代码可以编译,但是当我运行它时,我放入paint方法中的所有内容都没有显示出来。我有什么想念的吗?感谢您的帮助,这是我的一些代码。publicvoidpaint(Graphicsg){super.paintComponents(g);g.drawString("Int1is"+int1,30,30);g.drawString("Int2is"+int2,30,80);switch(int1){case0:g.setColor(Color.white);g.fillRect(300,300,300,500)

java - 如何翻转 JFrame 及其子项?

这可能看起来很愚蠢(而且可能确实如此),但我如何才能将JFrame中的所有组件颠倒过来?JFrame中的所有内容都必须围绕JFrame中间的轴垂直翻转,包括控件上的文本。最好使用JTextField、JButton等。即使翻转也能按预期工作。我进行了一些搜索,但没有发现任何对这个主题有帮助的内容。有没有比手动更改布局然后扩展和覆盖所用每个控件的绘制方法更简单的方法?编辑:我设法让它工作。可以看到myanswerbelow. 最佳答案 您可以轻松翻转GUI,而无需修改所有组件,只需修改最顶层容器的paint方法即可:classReve

Java Paint 组件转换成位图

我需要在位图中绘制组件及其所有子组件的内容。如果我想绘制整个组件,下面的代码可以完美地工作:publicvoidprintComponent(Componentc,Stringformat,Stringfilename)throwsIOException{//CreatearenderableimagewiththesamewidthandheightasthecomponentBufferedImageimage=newBufferedImage(c.getWidth(),c.getHeight(),BufferedImage.TYPE_INT_ARGB);//Rendertheco

java - GUI Java 程序 - Paint 程序

我一直在努力找出我的代码有什么问题。这个想法是创建一个小的画图程序,并有红色、绿色、蓝色和清除按钮。我有我能想到的一切让它工作,但无法弄清楚代码有什么问题。程序打开,然后立即关闭。importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassPaint{publicstaticvoidmain(String[]args){guig=newgui();g.setVisible(true);}}publicclassguiextendsJComponentimplementsActionListener{JBu

java - 窗口的内容在最小化时消失

我有一个简单的类,它在拖动鼠标时画一条线,在按下(释放)鼠标时画一个点。当我最小化应用程序然后恢复它时,窗口的内容除了最后一个点(像素)外都消失了。我知道super.paint(g)方法会在每次窗口更改时重新绘制背景,但是无论我是否使用它,结果似乎都是一样的。它们两者之间的区别在于,当我不使用它时,窗口上画的不仅仅是一个像素,而不是我的所有画。我该如何解决这个问题?这是类。packagepainting;importjava.awt.*;importjava.awt.event.MouseAdapter;importjava.awt.event.MouseEvent;importjav

java - 在 JPanel 中绘制文本

我正在寻找有关如何在JPanel中绘制文本的最基本说明。我知道那里有十亿个教程,但没有一个是点击我的,我有一些具体的问题可能会帮助其他感到困惑的人。作为一个设置(一个测试应用程序),我有一个类,它有一个JLabel、一个JTextField、一个JButton和一个JPanel。应用程序从外部文件中读取整数,并应在按下JButton时在面板中显示它们的平均值。我整理了所有底层编程(即,按钮响应并将平均值打印到命令行)但我似乎无法整理出如何将平均值打印到面板。我想我最大的问题是如何将paint()或paintComponet()方法与其余代码结合起来。它应该是它自己的类(class)吗?