Java 如何在Netbeans中创建用户可以编辑的提醒?
我想在我的系统中创建一个像便签一样显示的提醒。我最初的想法是有一个文本区域,可以使用保存的.txt文件进行更新(这是个坏主意,所以我无法向您展示代码)。 我希望即使在用户注销系统后也能保存我的提醒。你有什么建议? 非常感谢。 如果我解释得不够清楚,请告诉我 这是当用户希望在系统中有注释之类的提醒时可以编辑的文本区域 编辑:我只是Netbeans的初学者,所以我有以下代码:Java 如何在Netbeans中创建用户可以编辑的提醒?,java,swing,Java,Swing,我想在我的系统中创建一个像便签一样显示的提醒。我最初的想法是有一个文本区域,可以使用保存的.txt文件进行更新(这是个坏主意,所以我无法向您展示代码)。 我希望即使在用户注销系统后也能保存我的提醒。你有什么建议? 非常感谢。 如果我解释得不够清楚,请告诉我 这是当用户希望在系统中有注释之类的提醒时可以编辑的文本区域 编辑:我只是Netbeans的初学者,所以我有以下代码: try { //// reader = new BufferedReader(new FileReader("C:\
try {
//// reader = new BufferedReader(new FileReader("C:\\Users\\cqm005\\Documents\\NetBeansProjects\\MASYhista\\ReminderText.txt"));
// String text = null;
//
// // repeat until all lines is read
// while ((text = reader.readLine()) != null) {
// contents.append(text)
// .append(System.getProperty(
// "line.separator"));
// }
//} catch (FileNotFoundException e1) {
// e1.printStackTrace();
//} catch (IOException e1) {
// e1.printStackTrace();
//} finally {
// try {
// if (reader != null) {
// reader.close();
// }
// } catch (IOException e1) {
// e1.printStackTrace();
// }
//}
//ReminderEditText.setText(contents.toString());
-用于从.txt文件检索数据
我只是用
outStream.print(ReminderEditText.getText());
outStream.close();
RefreshReminder();
用于保存提醒,但它不能像我期望的那样工作。请帮帮我 要将文本文件中的数据保存/恢复到文本区域,请执行以下操作:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.swing.text.*;
class TextAreaLoad extends JPanel
{
private JTextArea edit;
public TextAreaLoad()
{
setLayout( new BorderLayout() );
edit = new JTextArea(30, 60);
add(new JScrollPane(edit), BorderLayout.NORTH);
JButton read = new JButton("Read TextAreaLoad.txt");
read.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try
{
FileReader reader = new FileReader( "TextAreaLoad.txt" );
BufferedReader br = new BufferedReader(reader);
edit.read( br, null );
br.close();
edit.requestFocus();
}
catch(Exception e2) { System.out.println(e2); }
}
});
add(read, BorderLayout.LINE_START);
JButton write = new JButton("Write TextAreaLoad.txt");
write.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try
{
FileWriter writer = new FileWriter( "TextAreaLoad.txt" );
BufferedWriter bw = new BufferedWriter( writer );
edit.write( bw );
bw.close();
edit.setText("");
edit.requestFocus();
}
catch(Exception e2) { System.out.println(e2); }
}
});
add(write, BorderLayout.LINE_END);
}
private static void createAndShowGUI()
{
JFrame frame = new JFrame("TextArea Load");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new TextAreaLoad());
frame.pack();
frame.setLocationRelativeTo( null );
frame.setVisible(true);
}
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
createAndShowGUI();
}
});
}
}
要将数据从文本文件保存/恢复到文本区域,请执行以下操作:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.swing.text.*;
class TextAreaLoad extends JPanel
{
private JTextArea edit;
public TextAreaLoad()
{
setLayout( new BorderLayout() );
edit = new JTextArea(30, 60);
add(new JScrollPane(edit), BorderLayout.NORTH);
JButton read = new JButton("Read TextAreaLoad.txt");
read.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try
{
FileReader reader = new FileReader( "TextAreaLoad.txt" );
BufferedReader br = new BufferedReader(reader);
edit.read( br, null );
br.close();
edit.requestFocus();
}
catch(Exception e2) { System.out.println(e2); }
}
});
add(read, BorderLayout.LINE_START);
JButton write = new JButton("Write TextAreaLoad.txt");
write.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try
{
FileWriter writer = new FileWriter( "TextAreaLoad.txt" );
BufferedWriter bw = new BufferedWriter( writer );
edit.write( bw );
bw.close();
edit.setText("");
edit.requestFocus();
}
catch(Exception e2) { System.out.println(e2); }
}
});
add(write, BorderLayout.LINE_END);
}
private static void createAndShowGUI()
{
JFrame frame = new JFrame("TextArea Load");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new TextAreaLoad());
frame.pack();
frame.setLocationRelativeTo( null );
frame.setVisible(true);
}
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
createAndShowGUI();
}
});
}
}
“我最初的想法是有一个文本区域,可以使用保存的.txt文件进行更新(这是一个坏主意,……”我刚刚编写了一个小程序,将任务保存到文本文件中。它非常简单方便。因此我不同意这是一个坏主意。为什么你认为它是?“。所以我无法向你展示代码)。“哦,继续。。为了更快地获得更好的帮助,请发布或。我的代码有问题,当我刷新提醒或保存新提醒时,在关闭程序后,数据会返回到原来的状态。“我的代码有问题,”我没有建议发布“代码”或(大部分被注释掉)不可编译的代码片段。我建议发布MCVE或SSCCE(本质上是一样的)。按照链接,阅读我建议的代码形式。投票关闭。
关闭程序后,数据返回到原来的状态
-您是否阅读了提供的链接。您没有发布MCVE/SSCCE
。您发布的代码无法编译。您可以显示文件的写入位置,但不能显示文件的读取位置。“我最初的想法是创建一个可以使用保存的.txt文件进行更新的文本区域(这是一个坏主意,…”我刚刚编写了一个小程序,将任务保存到文本文件中。这非常简单方便。因此我不同意这是一个坏主意。你认为这是为什么?。“。因此,我无法向您显示代码)。”哦,继续..为了更快地获得更好的帮助,请发布或。当我刷新提醒或保存新的提醒时,在关闭程序后,数据会恢复到原来的状态。“我的代码有问题”,我没有建议发布“代码”或(大部分被注释掉)不可编译的代码片段。我建议发布MCVE或SSCCE(本质上是一样的)。按照链接进行操作,阅读我建议的代码形式。投票关闭。关闭程序后,数据返回到原来的状态
-您是否阅读了提供的链接。您没有发布MCVE/SSCCE
。您发布的代码不会编译。您显示了文件的编写位置,但没有显示文件的读取位置。谢谢你可以。但是否可以这样:我将编写什么文本来替换保存在同一个.txt文件中的旧文本?@AkaneMikazuki,我不知道你在问什么。我提供了工作代码供你测试。如果你仍然有问题,请发布一个“最小示例”“按照您问题的第一条评论中的建议演示问题。谢谢。但是否可以这样:我将写什么文本来替换保存在同一个.txt文件中的旧文本?@AkaneMikazuki,我不知道你在问什么。我提供了工作代码供您测试。如果你仍然有问题,那么按照你问题的第一条评论中的建议,发布一个“最简单的例子”来说明问题。