我很难弄清楚如何让我的程序根据用户输入的月、日、年来计算星期几。如下图所示。关于如何使它与JTextField和JComboBoxes连接,我没有任何线索。我真的很感谢任何人帮我做这件事。我知道我应该用:
Calendar xmas=new GregorianCalendar(1998,Calendar.12,25);int dayOfWeek=xmas.get(calendar.day_of_week);//6=星期五
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JComboBox;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JTextField;
import javax.swing.JTextArea;
public class DayOfWeek extends JFrame
{
private JPanel contentPane;
private JTextField yearField;
private JLabel dayOfW;
/**
* Launch the application.
*/
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
try
{
DayOfWeek frame = new DayOfWeek();
frame.setVisible(true);
} catch (Exception e)
{
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public DayOfWeek()
{
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 230);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel monthL = new JLabel("Month:");
monthL.setBounds(10, 11, 46, 14);
contentPane.add(monthL);
JComboBox monthBox = new JComboBox();
monthBox.setModel(new DefaultComboBoxModel(new String[] {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"}));
monthBox.setBounds(53, 8, 109, 20);
contentPane.add(monthBox);
JLabel dayL = new JLabel("Day: ");
dayL.setBounds(172, 11, 31, 14);
contentPane.add(dayL);
JComboBox dayBox = new JComboBox();
dayBox.setModel(new DefaultComboBoxModel(new String[] {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31"}));
dayBox.setBounds(203, 8, 53, 20);
contentPane.add(dayBox);
JLabel yearL = new JLabel("Year: ");
yearL.setBounds(266, 11, 37, 14);
contentPane.add(yearL);
yearField = new JTextField();
yearField.setBounds(301, 8, 86, 20);
contentPane.add(yearField);
yearField.setColumns(10);
JLabel dayOfW;
dayOfW = new JLabel("The day of the week is");
dayOfW.setBounds(10, 153, 126, 14);
contentPane.add(dayOfW);
JTextArea textArea = new JTextArea();
textArea.setBounds(172, 148, 160, 19);
contentPane.add(textArea);
Calendar xmas = new GregorianCalendar(1998, Calendar.DECEMBER, 25);
int dayOfWeek = xmas.get(Calendar.DAY_OF_WEEK); // 6=Friday
yearField.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
}
});
}
}
非常感谢
你有很多选择...
在每个字段上使用FocusListener
,当调用FocusLoster
时,验证每个字段的状态,以确定您是否有足够的信息来执行所需的计算...但这没有考虑到如果用户只是在最后一个字段上按下Enter可能发生的情况...
在每个字段上使用ActionListener
来检测用户何时按下Enter(或单个字段被操作),并验证每个字段的状态,以确定您是否有足够的信息来执行所需的计算,但这并不考虑用户未在字段上按下Enter的情况
同时使用FocusListener
和ActionListener
,这两种方法只需调用一个方法来验证每个字段的状态,以确定您是否有足够的信息来执行所需的计算
有一个JButton
,用户必须按下该按钮才能执行计算。激活后,它将验证每个字段的状态,以确定您是否有足够的信息来执行所需的计算
看一看:
您甚至可以使用InputVerifier
,有关更多详细信息,请参阅验证输入
本文向大家介绍C#根据年月日计算星期几的函数,包括了C#根据年月日计算星期几的函数的使用技巧和注意事项,需要的朋友参考一下 DateTime.Now.ToString("dddd",new System.Globalization.CultureInfo("zh-cn")); 今天在网上看见一些关于 C#实现的根据年月日计算星期几 的介绍: 算法如下: 基姆拉尔森计算公式 W= (d+2*m+3
我有一个小谜语,我想解开它困扰着我,这个谜语是: 我不确定解决这个问题的假设是什么? 谢谢,请帮帮我。
问题内容: 我如何知道JavaScript的周数和年份来计算日期?对于第20周和2013年以获得5/16/2013,我正在尝试这样做: 问题答案: function getDateOfWeek(w, y) { var d = (1 + (w - 1) * 7); // 1st of January + 7 days for each week 这使用简单的周定义,即2013年的第20周是5月14日
我想让程序根据我的扫描仪输入从ArrayList中进行选择。比如,我写早餐和甜食,它必须随机列出早餐甜食,并打印随机索引。 我还在学习Java,我只是在玩,并试图编码小项目来训练它。 下面是我已经写过的课程: 我是否可以将列表存储在变量中,可能是这样的: 我知道很难理解我,但英语不是我的主要语言,希望它能被理解。
问题内容: 我在sql中有一个用户表,他们每个都有生日。我想将他们的出生日期转换为他们的年龄(仅年),例如日期:年龄:14,并将更改为年龄: 在这里,我想显示用户的日期: 问题答案: 功能:, MySQL > = 5.0.0 功能:,
问题内容: 给定一个星期数,例如,您如何计算从星期一开始的那一周中的天数? 第40周的rfc-3339输出示例: 问题答案: PHP 下面的帖子是因为我是个白痴,没有正确阅读问题,但是会获得从星期一开始的一周中的日期,给出的是日期,而不是星期数。 在PHP中 ,改编自PHP日期手册页上的这篇文章 来自的输出: