首先,我想让您知道我在网上搜索了此内容,但找不到任何内容。我记得我曾经看到过一个线程,但是再也找不到它。那是很久以前。
我想知道如何在没有JFrame或AWT的情况下创建自己的窗口。我在任何地方搜索都只是向我显示库和预制代码,但我无法了解它在内部的工作方式。我想知道如何在没有Java给我的情况下构建窗口。
Java的好与坏是,Java使开发人员易于操作,因此,这就是为什么我尝试使用C,搜索汇编代码并试图找到一种方法来执行此操作的原因,但是所有方法都使用了库。
我想知道为什么这可能吗?不需要所有的窗口,只需要窗口的基础,甚至不需要屏幕上的像素,但是不需要使用更多的库或为此而构建的类,每个人都可以使用,因为这是他们唯一了解的内容。
感谢所有能帮助我并回答我的问题的人:)
在Java中,我们依赖于与本机OS的绑定。之所以拥有诸如AWT,Swing,JavaFX,SWT之类的抽象框架,是因为这样做的过程并不简单,尤其是当您实际上想以某种有意义的方式在这些表面上绘制时,并且当您考虑不同的情况时会变得更加复杂可用操作系统的要求。
例如,取决于您实际要实现的目标,取决于您要走的路。
使用JWindow
或未装饰的JFrame
。这为您提供了可用的绘画表面,以及与现成的事件队列(消息循环)的连接。
这两个窗口为您提供了一个没有装饰的“空”矩形。处理这些类型的窗户时,您可以直接或通过自定义外观来提供自己的装饰。
直接在操作系统中使用JNI(本机)绑定,这将允许您要求操作系统创建自己的窗口。这意味着您有责任确定如何绘制窗口,如何处理来自操作系统的,针对窗口的消息(事件)以及所有其他注意事项。
看看JNA,Win32WindowDemo.java
或者如果您真的想变得时髦,您也可以看看...
作为对本机图形库的一些附加绑定
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句