public RentAndReturnForm() { InitializeComponent(); sd = SharingData.GetInstance(); itemData = new itemVO(); rentData = new rentVO(); }
} // Constructor // Login 폼이 로드되었을 경우 private void LoginForm_Load(object sender, EventArgs e) { // 해당 폼이 로드됬을 경우는 // 1. 프로그램이 처음 시작되었을 때 // 2. 뒤로가기로 돌아왔을때 // 2번의 경우에서 계속해서 텍스트파일에 데이터를 쓰게되므로 // SharingData 쪽 체크값을 이용해 프로그램이 구동될 동안은 한번만 쓰도록 설정 if (!sd.LoginWriteCheck) { // Account Text File Read var lines = File.ReadAllLines("Account.txt", Encoding.Default); foreach (var cellValues in lines) { var cellArray = cellValues.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); AccountVO accountData = new AccountVO(cellArray[0], cellArray[1], cellArray[2], cellArray[3]); sd.AccountList.Add(accountData); } // foreach // Item Text File Read lines = File.ReadAllLines("Item.txt", Encoding.Default); foreach (var cellValues in lines) { var cellArray = cellValues.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); itemVO itemData = new itemVO(cellArray[0], cellArray[1], cellArray[2]); sd.ItemList.Add(itemData); } // foreach // Rent Text File Read lines = File.ReadAllLines("Rent.txt", Encoding.Default); foreach (var cellValues in lines) { var cellArray = cellValues.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); rentVO rentData = new rentVO(cellArray[0], cellArray[1], cellArray[2], cellArray[3]); sd.RentList.Add(rentData); } // foreach sd.LoginWriteCheck = true; } } // M.LoginForm_Load
private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { // 숫자만 입력할 수 있도록 int keyCode = (int)e.KeyChar; if ((keyCode < 48 || keyCode > 57) && keyCode != 8 && !keyCode.Equals(46)) { e.Handled = true; } // 엔터키가 입력되면 if (e.KeyChar.Equals((char)Keys.Enter)) { sd.InputNumData = txtBox_inputNum.Text; // 해당 물품 갯수 차감 var calc = int.Parse(sd.ItemList[rarf.Index].ItemNum) - int.Parse(sd.InputNumData); if (calc < 0) { MessageBox.Show("대여하려는 물품의 갯수가 수량보다 많습니다"); return; } sd.ItemList[rarf.Index].ItemNum = calc.ToString(); // 대여자 쪽 정보 추가 rentVO rentData = new rentVO(sd.ItemList[rarf.Index].ItemNo, DateTime.Now.ToShortDateString(), sd.CurrentId, sd.InputNumData); sd.RentList.Add(rentData); // RentAndReturnForm 쪽의 GridView 2개를 Refresh rarf.rentGridViewRefresh(); rarf.itemGridViewRefresh(); // Closed Event 발생 this.OnFormClosed(null); } // ESC 입력되면 창 종료 if (e.KeyChar.Equals((char)Keys.Escape)) { this.OnFormClosed(null); } }