最佳解答者
有關時間和密碼的問題

問題
-
各位大大你們好
之前我有po過這方面的問題
不過程式碼忘了備份導致忘記了怎麼寫
而且也衍生出其他的問題
也請各位大大不吝教導
private void btn_checkPassword_Click(object sender, EventArgs e)
{
//string password = "september0036";txt_password.Text = "september0036";
string month = DateTime.Now.ToString("MMM", CultureInfo.GetCultureInfo("EN-US"));if (password.IndexOf(month, StringComparison.OrdinalIgnoreCase) == 0)
{
f2 = new Form2();
f2.Close();f1 = new Form1();
f1.Show();
}這是程式碼的部份
問題1 當我把時間調成9月時不管密碼怎麼打 它都會自動輸入成九月的密碼 而顯示Form1
問題2 我把時間調成十月 十一月 它都會顯示Form1
請各位大大不吝教導
非常謝謝你們
解答
-
string password1 = "september0036";
string month = DateTime.Now.ToString("MMM", CultureInfo.GetCultureInfo("EN-US"));
if (password1.IndexOf(month, StringComparison.OrdinalIgnoreCase) == 0)
{f1 = new Form1();
f1.Show();}
else
{
f1 = new Form1();
f1.Hide();
}不知您的 password1 目的為何, 若依你的需求. 要是我, 我會改成
Code Snippetint checkMonth = 9; //設定目標月為九月
int extMonth = 3; //從九月開始, 可延伸使用3個月也就是9,10,11
int currMonth = DateTime.Now.Month;if (currMonth % checkMonth < extMonth)
{
//do 3個月內可以做的事
}
else
{
//do 不可以做的事
}註1:上述的程式依你所提供的程式片段所進行的修改
註2:若依你目前所言的狀況 2007/9,10,11 & 2008/9,10,11 都可做From1的動作.
所有回覆
-
天 寫信: 各位大大你們好
之前我有po過這方面的問題
不過程式碼忘了備份導致忘記了怎麼寫
而且也衍生出其他的問題
也請各位大大不吝教導
private void btn_checkPassword_Click(object sender, EventArgs e)
{
//string password = "september0036";txt_password.Text = "september0036";
string month = DateTime.Now.ToString("MMM", CultureInfo.GetCultureInfo("EN-US"));if (password.IndexOf(month, StringComparison.OrdinalIgnoreCase) == 0)
{
f2 = new Form2();
f2.Close();f1 = new Form1();
f1.Show();
}這是程式碼的部份
問題1 當我把時間調成9月時不管密碼怎麼打 它都會自動輸入成九月的密碼 而顯示Form1
問題2 我把時間調成十月 十一月 它都會顯示Form1
請各位大大不吝教導
非常謝謝你們
程式後來改成
string password1 = "september0036";
string month = DateTime.Now.ToString("MMM", CultureInfo.GetCultureInfo("EN-US"));
if (password1.IndexOf(month, StringComparison.OrdinalIgnoreCase) == 0)
{f1 = new Form1();
f1.Show();}
else
{
f1 = new Form1();
f1.Hide();
}不過問題卻還是每個月都可以用
如果我程式使用時間為9 10 11這三個月
只要打上9月的密碼就可以使用三個月
請問各位大大這要怎麼改?
-
string password1 = "september0036";
string month = DateTime.Now.ToString("MMM", CultureInfo.GetCultureInfo("EN-US"));
if (password1.IndexOf(month, StringComparison.OrdinalIgnoreCase) == 0)
{f1 = new Form1();
f1.Show();}
else
{
f1 = new Form1();
f1.Hide();
}不知您的 password1 目的為何, 若依你的需求. 要是我, 我會改成
Code Snippetint checkMonth = 9; //設定目標月為九月
int extMonth = 3; //從九月開始, 可延伸使用3個月也就是9,10,11
int currMonth = DateTime.Now.Month;if (currMonth % checkMonth < extMonth)
{
//do 3個月內可以做的事
}
else
{
//do 不可以做的事
}註1:上述的程式依你所提供的程式片段所進行的修改
註2:若依你目前所言的狀況 2007/9,10,11 & 2008/9,10,11 都可做From1的動作.