記録として残しておきたいブログ

主にプログラミングについて書きます。現在は http://tmg0525.hatenadiary.jp/ に書いています。

コメビュの予約機能(予約取り消し)

この記事でやったように「取り消し」のコメントがきたら予約欄から削除する。

予約追加(これ)と似た感じでできました

 

// cls_dataget.cs
public ArrayList delList = new ArrayList();

public bool de = false; // メインフォームで使う予約取り消しコメフラグ


public void commeDisplay()
{
// ここでnew忘れずに
delList = new ArrayList();

if (message == "/torikeshi" || message == "/予約")
{
if (delList.Count != 0)
{
if (delList[0] != null)
{
for (int u = 0; u <= delList.Count - 1; u++;)
{
if (delList[u] != userid)
{
      // リストに追加、フラグ立てる
delList.Add(name);
de = true;
}
}
}
}
else
{
   // リストに追加、フラグ立てる
delList.Add(name);
de = true;
}
}
}

 

MainFormのコードは予約追加よりも簡単になりました。

(この記事に関係のないところは省いてある)

 

// MainFrom.cs

cls_dataget
dget = new cls_dataget();


private void Timer_Tick(object sender, EventArgs e)
{
dget.commeDisplay();
if (dget.de)
{
yoyaDel(dget.delList);
dget.de = false;
}
}

private void
yoyaDel( ArrayList dList)
{
// dListに1つでも値が入っているとき
if (dList.Count > 1)
{
for (int a = 0; a < dList.Count; a++)
  {
for (
int i = 0; i < data_table.Rows.Count; i++)
{
   
// .ToString() で文字列に変換しないと比較できない!!!
// data_table[i][j]で指定したところにアクセスできる
if (data_table[i][0].ToString() != uList[a].ToString())
{
// 予約欄から削除する
data_table.Rows.Remove(data_table.Rows[i]);

// DataGridViewにデータセットを設定
     dataGridView1.DataMember = data_set.Tables[0].TableName;
dataGridView1.DataSource = data_set;
}
}
}

}
}