在我的用于Android的LibGDX游戏中,如果用户退出游戏(通过按下主页按钮或切换到另一个应用程序),LibGDX的内置pause()方法应该运行.现在,这很好,它也可以正常工作.我的问题是,如果我退出游戏做任何事情,然后重新加入游戏,它已完全重新启动应用程序(有点像每次你退出并在Pacman游戏中重新加入你的分数将是零,所有的点都会回来).对于我的屏幕切换,每次用户退出时游戏都不需要重新启动,而只需输入相应的状态即可实际模拟"暂停"游戏.如何在用户退出时阻止LibGDX/Android完全杀死游戏,但只是暂停它?
在我正在阅读Java的书中,它通过使用写入文件并将其存储的程序来演示序列化.我收到一个奇怪的错误,我不知道如何阅读,它拒绝我访问创建.txt文件.这是错误:
Exception in thread "main" java.io.FileNotFoundException: C:\testFile.txt (Access is denied)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at serializableTests.MyProgram.main(MyProgram.java:18)
Run Code Online (Sandbox Code Playgroud)
这是该计划的两个类:
用户类:
public class User implements Serializable {
private static final long serialVersionUID = 4415605180317327265L;
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
Run Code Online (Sandbox Code Playgroud)
这是主要课程:
import java.io.File;
import java.io.FileOutputStream; …Run Code Online (Sandbox Code Playgroud) 我需要能够将两个组件放在一行上,并与其他几个标签和文本字段重复几次,但要使所有内容堆叠得井井有条。我将在下面发布我的代码。
package madLibs;
import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class MadLibsGUI {
public static void main(String[] args) {
MadLibsGUI main = new MadLibsGUI();
main.start();
}
public void start() {
JFrame frame = new JFrame();
JPanel panel = new JPanel();
JButton madLibButton = new JButton("Lib it!");
JLabel title = new JLabel("Welcome to mad libs! \n Put in your words and press the 'Lib It' button to play!");
JLabel nameLabel = …Run Code Online (Sandbox Code Playgroud) 我正在构建一个与我的LogInScreen类集成的简单创建帐户用户GUI.它创建一个简单的用户,序列化它,然后让我在我的登录程序中使用该访问.问题是,当我输入密码时,它们永远不会正确.我总是遇到一个问题,我的程序告诉我我的密码不一样.我不知道如何解决这个问题,我想知道如何解决这个问题.我将在下面发布我的代码(整个事情,以及我的序列化类,因为问题可能在这里).
用户类:
package passwordProgram;
import java.util.ArrayList;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.Serializable;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.UIManager;
public class User implements Serializable, ActionListener {
public static ArrayList<String> allUsernames = new ArrayList<String>();
String username;
String password;
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
e.printStackTrace();
}
User user = new User();
user.mainGUI();
}
JFrame frame;
JPanel panel;
JTextField …Run Code Online (Sandbox Code Playgroud) 我有一个BitmapFont,当他以恒定速率在屏幕上移动时显示玩家的分数.因为玩家总是在移动,所以我必须重新计算每帧画出字体的位置.我用这个代码.
scoreFont.setScale(4f, 4f);
scoreFont.draw(batch, "" + scoreToShow, playerGhost.pos.x + 100f, 600f);
playerGhost.render(batch);
Run Code Online (Sandbox Code Playgroud)
问题?字体不会停止抖动.它只有几个像素的振动,但它有点明显.当我在平板电脑上运行时,它会更加引人注目.
这是一个已知的错误?
我有一个项目,其中有多个 Angular 垫表。该项目的要求规定它必须遵守材料原则,并且每个表格还显示在其下方找到的结果的数量。我只想使用分页工具,但要求指出用户特别不希望分页。我也只会使用分页,但将页面长度设置为数据集的长度,但这看起来很混乱,并且创建了永远不会使用的导航按钮。
看来我的两个选择是:
执行此操作的最佳方法是什么?
我几个月前一直在重建一个旧的MS-paint复制猫,Swing再一次给了我一些老问题.其中一个让我和其他几个人现在难过了几天.我有一个自定义JFrame,我用来放置我的所有组件,以及自定义JButtons,用于表示用户可以选择的各种颜色和工具.现在,问题是我的程序没有显示我的大多数按钮.这是我的ColorButton类:
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
public class ColorButton extends JButton implements ActionListener
{
private static final long serialVersionUID = 1L;
Color color;
public ColorButton(Color color, String name)
{
this.color = color;
setButtonIcon(name);
}
private void setButtonIcon(String name)
{
ImageIcon icon = new ImageIcon("images/" + name);
setIcon(icon);
System.out.println("Icon set.");
}
@Override
public void actionPerformed(ActionEvent event)
{
}
}
Run Code Online (Sandbox Code Playgroud)
基本上,这个类只是一个更好的按钮,我可以重用并动态放置在主框架上.我设置它,以便它需要一个颜色(设置用户的光标颜色)和一个字符串(为了从资源文件夹中获取ImageIcon).这是我必须添加所有内容的JFrame.
import java.awt.BorderLayout;
import java.awt.Color;
import java.util.ArrayList;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.TitledBorder;
public class …Run Code Online (Sandbox Code Playgroud) 在这个程序中,我需要我的程序将类的状态放入一个不可编辑的JTextArea中,但是我一直得到一个NullPointerException.我有一种感觉,这与每次启动时对象被反序列化的事实有关.如果我删除它并用实际的String替换它,它工作正常.我该怎么办?我将在下面发布两个课程.
BankGUI类:
package GUIs;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridBagLayout;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.ListSelectionModel;
import javax.swing.ScrollPaneConstants;
import javax.swing.UIManager;
public class BankGUI {
BankAccount account;
private void deserializeAccount() {
try {
ObjectInputStream objectStream2 = new ObjectInputStream(
new FileInputStream("bankAccounts.txt"));
account = (BankAccount) objectStream2.readObject();
objectStream2.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] …Run Code Online (Sandbox Code Playgroud)