private void Draw(){
int width = Screen.PrimaryScreen.Bounds.Width;
int height = Screen.PrimaryScreen.Bounds.Height;
Bitmap image= new Bitmap(width, height);
Graphics gr = Graphics.FromImage(image);
gr.CopyFromScreen(0, 0, 0, 0, new Size(width, height));
Random rnd = new Random();
gr.DrawEllipse(new Pen(Color.Red, rnd.Next(100)), rnd.Next(300), rnd.Next(100), rnd.Next(600), rnd.Next(1000));
Point[] p = new Point[3];
p[0] = new Point(rnd.Next(30), rnd.Next(60));
p[1] = new Point(rnd.Next(100), rnd.Next(260));
p[2] = new Point(rnd.Next(30), rnd.Next(10));
gr.DrawPolygon(Pens.AliceBlue, p);
gr.DrawBeziers(Pens.Yellow, p);
pcImageBox.Image = image;
}
Run Code Online (Sandbox Code Playgroud)
当我每300毫秒使用Timer并调用该Draw()方法时,一切正常,但是当我查看流程管理器时,我的项目使用了更多的内存(内存每300毫秒增加一次)
也许我应该使用垃圾收集器或使用垃圾收集器p = null;。如何解决此问题?
感谢您的帮助,对不起我的英语不好。
mainMethod.java
public class mainMethod{
public animalsData[] animals;
public mainMethod(){
animals[this.animals.length + 1] = new animalsData("CAT", "4");
}
public static void main(String[] args) {
mainMethod run = new mainMethod();
}
}
Run Code Online (Sandbox Code Playgroud)
animalsData.java
public class animalsData{
String name, l;
public animalsData(String name, String l) {
super();
this.name= name;
this.l= l;
}
}
Run Code Online (Sandbox Code Playgroud)
我有这个问题:线程"main"java.lang.NullPointerException中的异常
....
public class mainClass {
public mainClass(){
Timer time = new Timer();
mainClass.calculate calculate = new mainClass.calculate();
time.schedule(calculate, 1 * 1000);
}
public static void main(String[] args){
new mainClass();
}
class calculate extends TimerTask{
@Override
public void run() {
System.out.println("working..");
}
}
}
Run Code Online (Sandbox Code Playgroud)
我在控制台中只看到一次"工作......"消息.我想看到每一秒"工作......"代码中的问题是什么?而我的另一个问题是我想每秒运行我自己的方法但是如何?
索里因为我的英语不好..
我尝试通过房间持久性库使用保存值到数据库。我SettingsValueModelConverter错了,缺少一些东西。如何以SettingsKeyContract最佳方式保存对象?
日志猫:
SettingsModel
Error:(14, 1) error: Cannot figure out how to save this field into database. You can consider adding a type converter for it.
Run Code Online (Sandbox Code Playgroud)
代码:
object SETTING_CONS{
const val TABLE = "Content_Setting"
const val ID = "uid"
const val KEY = "key"
const val VALUE = "value"
}
class SettingsValueModel(var value: SettingsKeyContract)
class SettingsValueModelConverter {
@TypeConverter
fun fromString(value: String): SettingsKeyContract = Gson().fromJson(value, object : TypeToken<SettingsKeyContract>() {}.type)
@TypeConverter
fun fromModel(value: SettingsKeyContract): String = Gson().toJson(value)
}
@Entity(tableName …Run Code Online (Sandbox Code Playgroud) 主类.java:
public class mainClass extends Application{
Scene scene;
Group group;
@Override
public void start(Stage stg) throws Exception{
stg.setTitle("Hi");
stg.setWidth(600); stg.setHeight(250);
group = new Group();
scene = new Scene(group, 600, 250);
scene.getStylesheets().add("mainClass.css");
stg.setScene(scene);
stg.centerOnScreen();
stg.show();
}
public static void main(String[] args) {
launch(args);
}
}
Run Code Online (Sandbox Code Playgroud)
主类.css
.mainClass-scene{
-fx-background-image: url("background.jpeg");
-fx-background-repeat: stretch;
-fx-background-size: 600 250;
-fx-background-position: center center;
-fx-effect: dropshadow(three-pass-box, black, 30, 0.5, 0, 0);
}
Run Code Online (Sandbox Code Playgroud)
应用程序正常工作我显示我的框架,但我无法在场景中看到背景图像。也许 css 不起作用我如何解决这个问题?
对不起,我的英语不好,谢谢。
import javax.swing.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
public class AnaPencere{
JFrame pen;
AnaPencere(){
pen = new JFrame("Ana Pencere");
pen.setSize(613, 253);
pen.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pen.setLocationRelativeTo(null);
pen.setResizable(false);
pen.add(new Cizim());
pen.setVisible(true);
}
private class Cizim extends JPanel{
private Cizim() {
this.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
System.out.println(e.getKeyCode());
}
});
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行项目时,一切都按预期工作,但是当我按下一个键时,我没有在控制台中看到预期的结果
package mainData;
public class Hello{
public void Hello(String sData, int ... nAges){
for(int x : nAges){
System.out.println(sData + " " + x);
}
}
public static void main(String args[]){
Hello ages = new Hello("Age: ", 5, 6, 7, 8);
}
}
Run Code Online (Sandbox Code Playgroud)
当我更改构造函数(Hello> Hello2)时,这段代码运行没有问题.但为什么这段代码不起作用?
起初我的英语不好:)
我想创建新列表,(Arraylist, hashmap etc.. which is appropriate)这个列表有6个字段,例如;
ArrayList<Integer, Integer, String, Integer, String, Integer> nData = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)
这是不正确我知道,但我需要列表<int, int, String, int, String, int>
但如何?谢谢
我想打开资产文件.在java代码工作之前,但当我将代码更改为kotlin时,它不起作用.
Java代码的工作原理
InputStream streamIN = new BufferedInputStream(context.getAssets().open(Database.ASSET));
OutputStream streamOU = new BufferedOutputStream(new FileOutputStream(LOCATION));
byte[] buffer = new byte[1024];
int length;
while ((length = streamIN.read(buffer)) > 0) {
streamOU.write(buffer, 0, length);
}
streamIN.close();
streamOU.flush();
streamOU.close();
Run Code Online (Sandbox Code Playgroud)
我将代码更改为Kotlin但它不起作用
var length: Int
val buffer = ByteArray(1024)
BufferedOutputStream(FileOutputStream(LOCATION)).use {
out ->
{
BufferedInputStream(context.assets.open(Database.ASSET)).use {
length = it.read(buffer)
if (length > 0) out.write(buffer, 0, length)
}
out.flush()
}
}
Run Code Online (Sandbox Code Playgroud) java ×5
android ×2
kotlin ×2
android-room ×1
c# ×1
css ×1
inputstream ×1
javafx ×1
jpanel ×1
keylistener ×1
list ×1
memory ×1
setfocus ×1
swing ×1
timer ×1