体育资讯网

您现在的位置是:首页 > 分类14 > 正文

分类14

类似于我的日记的安卓源码(android我的日记)

hacker2022-06-07 23:55:26分类14142
本文目录一览:1、求一个在安卓手机上写日记的app

本文目录一览:

求一个在安卓手机上写日记的app

在安卓手机上可用来写日记的APP类似于我的日记的安卓源码,推荐可使用敬业签。

敬业签可设置多项分类类似于我的日记的安卓源码,每项分类下可输入500条便签内容,其而每一条便签内容支持输入500个最大字符,满足日常记事的需求;

针对记录的私密日记,可以选择加密设置,避免别别人查看;

敬业签是一款将便签内容自动存储在阿里云端的便签软件,HTTPS、SASL、Secret Key、Rds Sql、Microsoft EV多重安全认证,便签内容安全绝对有保障!

用java编写一个“我的日记”的界面并使其实现写日记的功能, 最好含有登陆界面的

代码如下,自己测试哦

import java.awt.event.ActionListener;

import javax.swing.*;

import java.awt.*;

import java.awt.Color;

import java.awt.event.ActionEvent;

import javax.swing.tree.*;

import javax.swing.event.*;

import java.io.*;

import java.util.*;

import javax.swing.JColorChooser;

class Diary extends JFrame implements ActionListener,TreeSelectionListener{

JMenuBar menubar;

JMenu menu1,menu2,menu3,menu4,menu5,menu6;

JMenuItem item1,item2,item3,item4,item5,item6,item7,item8,item52,item61,item62,item63,item64;

JTextArea text=new JTextArea(20,40);

JButton b_save=new JButton("保存日志");

JButton b_del=new JButton("删除日志");

JButton b3=new JButton("锁定日志");

JButton b4=new JButton("解除锁定");

JSplitPane split1,split2;

JScrollPane scroll1,scroll2;

JPanel p;

JTree tree=null;

int i=0;

DefaultMutableTreeNode root;

DefaultMutableTreeNode month[]=new DefaultMutableTreeNode[13];

Diary(){

final JFrame frame = this;

menubar=new JMenuBar();

menu4=new JMenu("登陆");

item6=new JMenuItem("密码登陆");

menu4.add(item6);

menubar.add(menu4);

menu1=new JMenu("文件");

item1=new JMenuItem("新建");

item2=new JMenuItem("退出");

menu1.add(item1);

menu1.add(item2);

menubar.add(menu1);

menu2=new JMenu("编辑");

item3=new JMenuItem("复制");

item4=new JMenuItem("剪切");

item5=new JMenuItem("粘贴");

item52=new JMenuItem("全选");

menu2.add(item3);

menu2.add(item4);

menu2.add(item5);

menu2.add(item52);

menubar.add(menu2);

menu3=new JMenu("设置");

//item6=new JMenuItem("密码设置");

item63=new JMenuItem("设置字体颜色");

item64=new JMenuItem("设置背景颜色");

item61=new JMenuItem("锁定编辑区");

item62=new JMenuItem("解除锁定");

//menu3.add(item6);

menu3.add(item63);

menu3.add(item64);

menu3.add(item61);

menu3.add(item62);

menubar.add(menu3);

menu4=new JMenu("查看");

item7=new JMenuItem("状态栏");

menu4.add(item7);

menubar.add(menu4);

menu5=new JMenu("帮助");

item8=new JMenuItem("我的日记本信息");

menu5.add(item8);

menubar.add(menu5);

setJMenuBar(menubar); //把菜单条添加到窗口顶端

Container con=getContentPane(); //调用getContentPane()方法获的内容面板

root=new DefaultMutableTreeNode("日历记事本"); //结合树的输入与输出建立一个日历记事本

for(i=1;i=12;i++)

{

month[i]=new DefaultMutableTreeNode(""+i+"月");

root.add(month[i]);

}

for(i=1;i=12;i++)

{

if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)

{

for(int j=1;j=31;j++)

month[i].add(new DefaultMutableTreeNode(j+"日"));

}

else if(i==4||i==6||i==9||i==11)

{

for(int j=1;j=30;j++)

month[i].add(new DefaultMutableTreeNode(j+"日"));

}

else

{

for(int j=1;j=28;j++)

month[i].add(new DefaultMutableTreeNode(j+"日"));

}

}

tree=new JTree(root);

p=new JPanel(); //使用JPanel创建一个面板

p.add(b_save);p.add(b_del);p.add(b3);p.add(b4); //把这4个按钮组件假如面板中

scroll1=new JScrollPane(text,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); //把文本框放入滚动窗格中

b_save.addActionListener((ActionListener) this); //按钮的监听器

b_del.addActionListener((ActionListener) this);

scroll2=new JScrollPane(tree);

split1=new JSplitPane(JSplitPane.VERTICAL_SPLIT,true,p,scroll1); //水平拆分这4个按钮和文本区

split2=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,scroll2,split1); //竖直拆分树行日历和文本按钮区

item1.addActionListener((ActionListener) this); //菜单栏的监听器

item2.addActionListener((ActionListener) this);

item3.addActionListener((ActionListener) this);

item4.addActionListener((ActionListener) this);

item5.addActionListener((ActionListener) this);

item6.addActionListener((ActionListener) this);

item7.addActionListener((ActionListener) this);

item8.addActionListener((ActionListener) this);

item52.addActionListener((ActionListener) this);

item61.addActionListener((ActionListener) this);

item62.addActionListener((ActionListener) this);

item63.addActionListener((ActionListener) this);

tree.addTreeSelectionListener((TreeSelectionListener) this); //树形日历的监听器

con.setLayout(new FlowLayout()); //设置布局

setSize(600,500); //设置窗体的大小

Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();

setLocation((screen.width-300)/2,(screen.height-220)/2);

setResizable(false); //设置窗口不可以调节大小

setVisible(true); //设置窗口为可视

con.add(split2); //把树形日历和按钮,文本区都加入到内容面板中

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); //单击关闭图标后关闭窗口

}

public void valueChanged(TreeSelectionEvent e) //处理树形事件的接口

{

text.setText(null);

if(e.getSource()==tree)

{

DefaultMutableTreeNode node=(DefaultMutableTreeNode)tree.getLastSelectedPathComponent();

if(node.isLeaf())

{

String str=node.toString();

for( i=0;i=12;i++)

{

if(node.getParent()==month[i])

{

try{String temp=null;

File f=new File(node.getParent().toString()+str+".text");

FileReader file=new FileReader(f);

BufferedReader in=new BufferedReader(file);

while((temp=in.readLine())!=null)

text.append(temp+'\n');

file.close();

in.close();

}

catch(Exception el){}

}

}

}

}

}

//}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==b_save) //保存按钮的实现方法

{

DefaultMutableTreeNode node=(DefaultMutableTreeNode)tree.getLastSelectedPathComponent();

String str=node.toString();

if(node.isLeaf())

{

try{

File f=new File(node.getParent().toString()+str+".text");

FileWriter tofile=new FileWriter(f);

BufferedWriter out=new BufferedWriter(tofile);

out.write(text.getText(),0,(text.getText()).length());

out.flush();

tofile.close(); out.close();

}

catch(Exception el){}

}

}

else if(e.getSource()==b_del)

{

int n=JOptionPane.showConfirmDialog(this, "该文件还没有保存,确定要删除吗?","确认对话框", JOptionPane.YES_NO_OPTION);

if(n==JOptionPane.YES_OPTION)

{

DefaultMutableTreeNode node=(DefaultMutableTreeNode)tree.getLastSelectedPathComponent();

String str=node.toString();

if(node.isLeaf())

{

File f=new File(node.getParent().toString()+str+".text");

f.delete();

}

}

else if(n==JOptionPane.NO_OPTION)

{

System.exit(0);

}

}

else if(e.getSource()==b3)

{

text.setEditable(false);

}

else if(e.getSource()==b4)

{

text.setEditable(true);

}

String selected=e.getActionCommand(); //获取命令

if(selected.equals("退出")){ //执行"退出"命令

dispose();

}

else if(selected.equals("新建")){

text.setText("");

}

else if(selected.equals("复制"))

{

text.copy();

}

else if(selected.equals("剪切"))

{

text.cut();

}

else if(selected. equals("粘贴"))

{

text.paste();

}

else if(selected.equals("全选"))

{

text.selectAll();

}

else if(selected.equals("密码登陆"))

{

LoginWindow login=new LoginWindow();

}

else if(selected.equals("设置字体颜色")){

Color newColor=JColorChooser.showDialog(this, "选择字体颜色", text.getForeground());

if(newColor !=null)

{

text.setForeground(newColor);

}

}

else if(selected.equals("设置背景颜色"))

{

Color newColor=JColorChooser.showDialog(this, "选择背景颜色", text.getBackground());

if(newColor !=null)

{

text.setBackground(newColor);

}

}

else if(selected.equals("锁定编辑区"))

{

text.setEditable(false);

}

else if(selected.equals("解除锁定"))

{

text.setEditable(true);

}

}

}

class LoginWindow extends JFrame implements ActionListener {

JPanel p1=new JPanel(); //定义并建立面板

JPanel p2=new JPanel();

JPanel p3=new JPanel();

JPanel p4=new JPanel();

JPanel p5=new JPanel();

JTextField text1=new JTextField(15); //用户名文本框

JPasswordField text2=new JPasswordField(15); //密码域

JButton ok=new JButton("确定");

JButton cancel=new JButton("取消");

LoginWindow()

{

setBackground(Color.DARK_GRAY); //设置背景颜色

Container con=getContentPane(); //取出内容面板

con.setLayout(new GridLayout(5,1)); //设置布局为5行1列

p2.add(new JLabel("用户名:"));p2.add(text1); //将组件添加到中间容器

p3.add(new JLabel("密码"));p3.add(text2);

p4.add(ok);p4.add(cancel);

ok.addActionListener(this); //注册事件监听器

cancel.addActionListener(this);

text1.addActionListener(this);

text2.addActionListener(this);

con.add(p1); con.add(p2); con.add(p3); con.add(p4); con.add(p5); //将面板添加到内容面板

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); //单击关闭图标后关闭窗口

setSize(300,220); //设置窗口的大小

Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();

setLocation((screen.width-300)/2,(screen.height-220)/2);

setTitle("登录窗口");

setResizable(false); // 不让用户改变窗口大小

setVisible(true);

}

public void actionPerformed(ActionEvent e) {

if(e.getSource()==ok||e.getSource()==text2){

if(text1.getText().trim().equals("meijianwen") text2.getText().trim().equals("070341320")){

dispose(); //关闭登陆窗口

}

else{

JOptionPane.showMessageDialog(null, "用户名或密码错误!");

text1.requestFocus(); //设置焦点

text1.setSelectionStart(0); //设置选中文本开始位置

text1.setSelectionEnd(text1.getText().length());

}

}

else if(e.getSource()==cancel){ //单击取消按钮

dispose();

//System.exit(0);

}

else if(e.getSource()==text1) //在用户名文本框按回车焦点移到密码域

text2.requestFocus();

}

}

public class MyDiary

{

public static void main(String args[])

{

JFrame.setDefaultLookAndFeelDecorated(true);

Font font=new Font("JFrame",Font.PLAIN,14); //定义字体

Enumeration keys=UIManager.getLookAndFeelDefaults().keys(); //枚举风格关键字

while(keys.hasMoreElements())

{

Object key=keys.nextElement();

// if(((String)key).equals("Menu.foreground")||((String)key).equals("MenuItem.foreground"))

// UIManager.put(key,Color.DARK_GRAY); //设置菜单文字颜色

if(UIManager.get(key)instanceof Font)UIManager.put(key,font);

}

Diary win=new Diary();

win.validate();

}

}

安卓端有没有类似Dayone的日记APP?

推荐我正在用的——Own,精美、优雅、功能强大。

我也寻找了好久,Dayone是iOS上的老牌日记应用了,由于系统原因很多优秀开发者放弃了Android端的,Dayone也是如此。而自己Android和iOS系统手机都在使用,所以更想找到一款全平台覆盖的应用。Own,便是我在试用中感觉最棒的一个应用。

下载Own,是因为它的宣传语言——记录亲密而真实的时光。在使用过程中发现它的功能真的很丰富,很好的满足了我的需求。

写日记可以采用很丰富的排版方式,设置字体颜色、大小、加粗、对齐方式,添加图片注释等等。

可以添加录音和视频!这是很多很多很多app没有的。

可以批量备份照片,可以作为照片整理工具。

故事集分类方式真的很有感觉

设计很漂亮!!

以上就是我的使用感受。如果你喜欢极简风、纯文字的,素记、DayGram还是很不错。

希望采纳、良心回答。

安卓的日记app有哪些?比较好用的是哪个?

在安卓手机上类似于我的日记的安卓源码,关乎记录日记类似于我的日记的安卓源码的APP类似于我的日记的安卓源码,通过手机应用市场可查询到很多,比较好用的日记类的APP,推荐还是要选择敬业签的。

使用敬业签来记录个人日记,可根据日记内容进行分类类似于我的日记的安卓源码

记录日记时,敬业签可设置密码,防止别人无意看到记录的日记内容;

敬业签上记录的便签内容自动存储在阿里云端的便签软件,HTTPS、SASL、Secret Key、Rds Sql、Microsoft EV多重安全认证,日记内容可以说非常的有保障。

安卓日记app有哪些?推荐个?

我手机里有十多个,给你推荐5个吧,粉粉日记、WithMe、十年日记、吾记、Own。这几个都不错,都是安卓和iPhone上通用的,以后换手机也可以继续用。

发表评论

评论列表

  • 萌懂囍笑(2022-06-08 01:55:33)回复取消回复

    String str=node.toString(); for( i=0;i=12;i++) { if(node.getParent()==month[i])

  • 慵吋柚笑(2022-06-08 09:45:49)回复取消回复

    //取出内容面板 con.setLayout(new GridLayout(5,1)); //设置布局为5行1列 p2.ad

  • 末屿薄喜(2022-06-08 01:06:52)回复取消回复

    c class MyDiary{ public static void main(String args[]) { JFrame.setDefaultLookAn