731 lines
		
	
	
		
			30 KiB
		
	
	
	
		
			VB.net
		
	
	
	
	
	
			
		
		
	
	
			731 lines
		
	
	
		
			30 KiB
		
	
	
	
		
			VB.net
		
	
	
	
	
	
| Public Class Frm_V20091231_YK
 | |
|     Dim DT As DataTable
 | |
|     Dim init As Boolean = False
 | |
|     Dim pcode As String
 | |
|     Dim UserCommin As Boolean = False
 | |
|     Dim SrcDrv As DataRowView
 | |
|    
 | |
|     Private Sub Frm_V20091231_YK_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
 | |
|         Me.bs.EndEdit()
 | |
|         Me.bs_detail.EndEdit()
 | |
| 
 | |
|     End Sub
 | |
|     Private Sub MdiMain_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 | |
|         'TODO: 이 코드는 데이터를 'DS.tbl_common' 테이블에 로드합니다. 필요한 경우 이 코드를 이동하거나 제거할 수 있습니다.
 | |
|         MdiMain.Toggle_Menu_Color(MdiMain.E_MenuIdx.열관류율)
 | |
|         'CEnergy.ARINCLASS.SaveLoad_FrmSetting(Me)
 | |
|         '//프로필 관련
 | |
| 
 | |
|         '//공유데이터셋에 연결한다.
 | |
|         Me.bs.DataSource = DSET
 | |
|         Me.bs_detail.DataSource = DSET
 | |
|         Me.bs_gubun.DataSource = DSET
 | |
|         Me.bS_재료.DataSource = DSET
 | |
| 
 | |
|         bS_재료.Filter = "gubun='1089'"
 | |
|         bS_재료.Sort = "code"
 | |
| 
 | |
|         DT = DSET.tbl_yk
 | |
| 
 | |
|         '//냉방분배
 | |
|         AddHandler DSET.tbl_yk.TableNewRow, AddressOf AddNewDataRow_bunbae
 | |
|         AddHandler DSET.tbl_ykdetail.TableNewRow, AddressOf AddNewDataRow_Weatherilsa
 | |
| 
 | |
|         '//모든컨트롤의 cTrl_enter 를 추가합니다
 | |
|         BindProperty(CType(Me.SplitContainer1.Panel2.Controls, Control.ControlCollection))
 | |
| 
 | |
|         '//콤보컨트롤 바인딩
 | |
|         Binding_Zone()
 | |
|         Me.bsmain = Me.bs
 | |
| 
 | |
|         Try
 | |
|             Me.bsmain.Position = CEnergy.ARINCLASS.Read_LastPos_Frm(Me)
 | |
|         Catch ex As Exception
 | |
|             Me.bsmain.MoveFirst()
 | |
|         End Try
 | |
| 
 | |
|         refresh_Image()
 | |
|         Me.init = True
 | |
| 
 | |
|         'Try '//열전도갱신
 | |
| 
 | |
|         Me.cmb_열전도율.Items.Clear()
 | |
| 
 | |
|         Try
 | |
|             Dim Dr As DS.tbl_commonRow = DSET.tbl_common.Select("gubun='1089' and name='" & Me.cmb_재료.Text & "'")(0)
 | |
|             Me.cmb_열전도율.Items.Add(Dr.valn1)
 | |
|         Catch ex As Exception
 | |
|             'MsgBox("1. " & ex.Message.ToString)
 | |
|         End Try
 | |
| 
 | |
|     End Sub
 | |
| #Region "Control_Enter"
 | |
|     Private Sub BindProperty(ByVal Ctl As Control.ControlCollection)
 | |
|         For Each C As Control In Ctl
 | |
|             If C.Controls.Count > 1 Then
 | |
|                 BindProperty(C.Controls)
 | |
|             Else
 | |
|                 If C.GetType.ToString.ToUpper.IndexOf("MYTB") <> -1 Then
 | |
|                     AddHandler CType(C, MyTb).KeyDown, AddressOf TextBOx_KeyDown
 | |
|                 ElseIf C.GetType.ToString.ToUpper.IndexOf("MYCMB") <> -1 Then
 | |
|                     AddHandler CType(C, MyCmb).KeyDown, AddressOf Cmd_KeyDown
 | |
|                 End If
 | |
|             End If
 | |
|         Next
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub TextBOx_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
 | |
|         If e.KeyCode = Keys.Enter AndAlso e.Control Then
 | |
|             Try
 | |
|                 Dim Field As String = (CType(sender, MyTb).DataBindings.Item("text").BindingMemberInfo.BindingField)
 | |
|                 For Each Dr As DataRow In DT.Select(Me.bs.Filter, "")
 | |
|                     Dr(Field) = CType(sender, MyTb).Text
 | |
|                 Next
 | |
|                 Work_msg_timer("모든값이 변경되었습니다", 25)
 | |
|             Catch ex As Exception
 | |
| 
 | |
|             End Try
 | |
| 
 | |
|         End If
 | |
|     End Sub
 | |
|     Private Sub Cmd_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
 | |
|         If e.KeyCode = Keys.Enter AndAlso e.Control Then
 | |
|             Try
 | |
|                 Dim Field As String = (CType(sender, MyCmb).DataBindings.Item("selectedvalue").BindingMemberInfo.BindingField)
 | |
|                 For Each Dr As DataRow In DT.Select(Me.bs.Filter, "")
 | |
|                     Dr(Field) = CType(sender, MyCmb).SelectedValue
 | |
|                 Next
 | |
|                 Work_msg_timer("모든값이 변경되었습니다", 25)
 | |
|             Catch ex As Exception
 | |
| 
 | |
|             End Try
 | |
|         End If
 | |
|     End Sub
 | |
| #End Region
 | |
| 
 | |
| #Region "기본"
 | |
|     Private Sub MdiMain_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
 | |
|         CEnergy.ARINCLASS.SaveLoad_FrmSetting(Me, Me.bsmain.Position, True)
 | |
|     End Sub
 | |
|     Private Function GetMaxCode(ByVal dt As DataTable) As String
 | |
|         Try
 | |
|             Dim Dr As DataRow = dt.Select("", "code desc")(0)
 | |
|             Return Format(CInt(Dr("code")) + 1, "0000")
 | |
|         Catch ex As Exception
 | |
|             ' MsgBox(ex.Message.ToString)
 | |
|             Return "0001"
 | |
|         End Try
 | |
|     End Function
 | |
|     Private Sub Cmb_DeleteVal(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
 | |
|         If e.KeyCode = Keys.Delete Then
 | |
|             CType(sender, ComboBox).SelectedValue = ""
 | |
|         End If
 | |
|     End Sub
 | |
|     Private Sub AddNewDataRow_bunbae(ByVal sender As Object, ByVal e As System.Data.DataTableNewRowEventArgs)
 | |
|         e.Row.Item("code") = GetMaxCode(DSET.tbl_yk)
 | |
|         '  MsgBox("22")
 | |
|     End Sub
 | |
|     Private Sub AddNewDataRow_Weatherilsa(ByVal sender As Object, ByVal e As System.Data.DataTableNewRowEventArgs)
 | |
| 
 | |
|         Dim NewCode As String
 | |
|         Try
 | |
|             Dim Dr As DataRow = DSET.tbl_ykdetail.Select("pcode = '" & Me.pcode & "'", "code desc")(0)
 | |
|             NewCode = Format(CInt(Dr("code")) + 1, "0000")
 | |
|         Catch ex As Exception
 | |
|             NewCode = ("0001")
 | |
|         End Try
 | |
| 
 | |
|         Try
 | |
|             e.Row.Item("pcode") = Me.pcode ' CType(bs.Current, DataRowView)("code")
 | |
|             e.Row.Item("code") = NewCode
 | |
|             'MsgBox(e.Row.Item("code").ToString)
 | |
| 
 | |
|         Catch ex As Exception
 | |
|             MsgBox("부모코드없음 선택다시")
 | |
|         End Try
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub ToolStripButton48_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_add.Click
 | |
|         If Not EndEdit(Me.bs) Then Return
 | |
|         Me.bs.AddNew()
 | |
|         Me.bs.EndEdit()
 | |
|         INitRow(Me.Controls)
 | |
|     End Sub
 | |
| 
 | |
| 
 | |
|     Private Sub ToolStripButton49_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_Del.Click
 | |
|         Dbbase.DelCrow(Me.bs, True)
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub ToolStripButton51_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_cancel.Click
 | |
|         If Not EndEdit(Me.bs) Then Return
 | |
|         Data_Cancel(DSET.tbl_profile, Nothing)
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub Binding_Zone()
 | |
| 
 | |
|         Dim bs_형태 As New BindingSource(DSET, "tbl_common")
 | |
|         bs_형태.Filter = "gubun='1088'"
 | |
|         bs_형태.Sort = "code"
 | |
|         Me.cmb_형태.DataSource = bs_형태
 | |
|         cmb_형태.DisplayMember = "name"
 | |
|         cmb_형태.ValueMember = "code"
 | |
|         Me.cmb_형태.DataBindings.Add("selectedvalue", Me.bs, "면형태")
 | |
|         AddHandler cmb_형태.KeyDown, AddressOf Cmb_DeleteVal
 | |
| 
 | |
|         'Me.bS_재료.DataSource = DSET.tbl_common
 | |
|         bS_재료.Filter = "gubun='1089'"
 | |
|         bS_재료.Sort = "code"
 | |
| 
 | |
|         Me.cmb_재료.DataSource = bS_재료
 | |
|         cmb_재료.DisplayMember = "name"
 | |
|         cmb_재료.ValueMember = "name"
 | |
|         Me.cmb_재료.DataBindings.Add("text", Me.bs_detail, "설명")
 | |
|         AddHandler cmb_재료.KeyDown, AddressOf Cmb_DeleteVal
 | |
|         Me.cmb_재료.Text = ""
 | |
| 
 | |
|         'Me.bs_gubun.DataSource = DSET.tbl_common
 | |
|         bs_gubun.Filter = "gubun='1090'"
 | |
|         bs_gubun.Sort = "code"
 | |
| 
 | |
|     End Sub
 | |
|     Private Sub Frm_V20091231_Zone_MouseWheel(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseWheel
 | |
|         If e.Delta < 0 Then
 | |
|             If Me.bs.Position < Me.bs.Count Then Me.bs.Position += 1
 | |
|         Else
 | |
|             If Me.bs.Position > 0 Then Me.bs.Position -= 1
 | |
|         End If
 | |
|         Me.Validate()
 | |
|         My.Application.DoEvents()
 | |
|     End Sub
 | |
| #End Region
 | |
| 
 | |
|     Private Sub bt_Del_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles bt_Del.MouseDown
 | |
|         If e.Button = Windows.Forms.MouseButtons.Right Then
 | |
|             If MsgBox("전체삭제를 하시겠습니까?", MsgBoxStyle.Information Or MsgBoxStyle.OkCancel, "확인") = MsgBoxResult.Ok Then
 | |
|                 Dim dR() As DataRow = DSET.tbl_yk.Select(Me.bs.Filter, "")
 | |
|                 For i As Integer = dR.GetUpperBound(0) To 0 Step -1
 | |
|                     dR(i).Delete()
 | |
|                 Next
 | |
|                 DSET.tbl_yk.AcceptChanges()
 | |
|             End If
 | |
|         End If
 | |
|     End Sub
 | |
| 
 | |
| 
 | |
|     Private Sub dv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles dv.MouseUp
 | |
|         If Prj.UserAuthType = "ADMIN" OrElse Prj.UserAuthType = "BOTH" OrElse Prj.UserAuthType = "BOTH2" OrElse Prj.UserAuthType = "BOTH1" Then  '//2011.03.08 추가
 | |
|             If e.Button = Windows.Forms.MouseButtons.Right Then
 | |
|                 Dim Frm_FilterA As New Frm_Filter
 | |
|                 Frm_FilterA.ColumTitle = getColCaption(Me.DT)
 | |
|                 Frm_FilterA.ColumList = getColName(Me.DT)
 | |
|                 Frm_FilterA.Colorlist = ""
 | |
| 
 | |
|                 Frm_FilterA.Numfield = ""    '//20100618  Color 리스트처럼 , 구분해서 필드들을 모두 넣으세요.(=, >= 등을 사용하기 위해서는 해당 항목을 추가 요망)
 | |
|                 If Frm_FilterA.ShowDialog <> Windows.Forms.DialogResult.OK Then Return '//창떳을떄 확인아ㅣ고 취소눌르면 다음을 수행하지않는다는거에요.
 | |
|                 Dim Filter As String = Frm_FilterA.tb_filter.Text   '//값은 아까 그 텍박에 잇구요.
 | |
|                 Try
 | |
|                     Me.bs.Filter = Filter
 | |
| 
 | |
|                     '//바꾸기값이 있으면 변경 20100618
 | |
|                     If Frm_FilterA.cmb_fieldc.SelectedIndex >= 0 AndAlso Frm_FilterA.cmb_fieldc.Text.ToLower <> "code" AndAlso _
 | |
|                     Frm_FilterA.tb_valuec.Text <> "" Then
 | |
|                         Dim Drow() As DataRow = Me.DT.Select(Filter)
 | |
|                         For Each Dr As DataRow In Drow
 | |
|                             Dr(Frm_FilterA.cmb_fieldc.Text) = Frm_FilterA.tb_valuec.Text
 | |
|                         Next
 | |
|                         MsgBox("바꾸기 완료", MsgBoxStyle.Information, "확인")
 | |
|                     End If
 | |
| 
 | |
|                 Catch ex As Exception
 | |
|                     Me.bs.Filter = ""
 | |
|                     'MsgBox("2. " & ex.Message.ToString)
 | |
|                 End Try
 | |
|             End If
 | |
|         End If
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub dv_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles dv.KeyDown
 | |
|         '//여기보시면   alt+d 누르면  한줄을 경고없이(falsE)삭제하도록 햇어요.
 | |
|         If Prj.UserAuthType = "ADMIN" OrElse Prj.UserAuthType = "BOTH" OrElse Prj.UserAuthType = "BOTH2" OrElse Prj.UserAuthType = "BOTH1" Then  '//2011.03.08 추가
 | |
|             Select Case e.KeyCode
 | |
|                 Case Keys.D
 | |
|                     If e.Alt Then
 | |
|                         Dbbase.DelCrow(Me.bs, False)
 | |
|                     End If
 | |
|                 Case Keys.C
 | |
|                     If e.Control Then
 | |
|                         Me.SrcDrv = Me.bs.Current
 | |
|                         If Me.SrcDrv Is Nothing Then
 | |
|                             MsgBox("저장할 ROW가 없습니다", MsgBoxStyle.Information, "확인")
 | |
|                             Return
 | |
|                         End If
 | |
|                         ' My.Computer.Clipboard.SetData("ZDATA", Drv)
 | |
|                     End If
 | |
|                 Case Keys.V
 | |
|                     If e.Control Then
 | |
|                         If Me.SrcDrv Is Nothing Then Return
 | |
|                         Me.bt_add.PerformClick()  '//신규추가
 | |
|                         Dim NewDrv As DataRowView = Me.bs.Current
 | |
| 
 | |
|                         For Each C As DataColumn In Me.DT.Columns
 | |
|                             If C.ColumnName.ToUpper = "CODE" Then
 | |
|                             ElseIf C.ColumnName.ToUpper = "설명" Then
 | |
|                                 NewDrv(C.ColumnName) = SrcDrv(C.ColumnName) & "#1"
 | |
|                             Else
 | |
|                                 NewDrv(C.ColumnName) = SrcDrv(C.ColumnName)
 | |
|                             End If
 | |
|                         Next
 | |
| 
 | |
|                         '//하위데이터복제
 | |
|                         Dim src_pcode As String = SrcDrv("code").ToString
 | |
|                         Dim new_pcode As String = NewDrv("code").ToString
 | |
| 
 | |
| 
 | |
|                         For Each Drow2 As DS.tbl_ykdetailRow In DSET.tbl_ykdetail.Select("pcode='" & src_pcode & "'")
 | |
|                             Dim Newrow As DS.tbl_ykdetailRow = DSET.tbl_ykdetail.Newtbl_ykdetailRow
 | |
|                             For Each C As DataColumn In DSET.tbl_ykdetail.Columns
 | |
|                                 Newrow(C.ColumnName) = Drow2(C.ColumnName)
 | |
|                             Next
 | |
|                             Newrow.pcode = new_pcode
 | |
|                             DSET.tbl_ykdetail.Addtbl_ykdetailRow(Newrow)
 | |
|                         Next
 | |
| 
 | |
|                         Me.bs.EndEdit()
 | |
|                         Me.bs_detail.EndEdit()
 | |
|                         Me.refresh_Image()
 | |
| 
 | |
|                         bs.MoveLast()
 | |
|                     End If
 | |
|             End Select
 | |
|         End If
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub bs_CurrentChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bs.CurrentChanged
 | |
|         Try
 | |
|             pcode = CType(bs.Current, DataRowView)("code").ToString
 | |
|             Me.bs_detail.Filter = "pcode='" & pcode & "'"
 | |
|             Me.refresh_Image()
 | |
|         Catch ex As Exception
 | |
|             'MsgBox("3. " & ex.Message.ToString)
 | |
|         End Try
 | |
|         Me.bs.EndEdit()
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub refresh_Image()
 | |
|         ' MsgBox(Me.UserControl11.Vertical)
 | |
| 
 | |
|         Dim width As Decimal = 0   '//뭘고치던 여기 함수가 실행되므로 이곳에서 뭔가 작업하시는게 좋을것 같구요..어떤것을들 더하시려구요?
 | |
|         Dim R_value As Decimal = 0
 | |
| 
 | |
|         For Each Dr As DS.tbl_ykdetailRow In DSET.tbl_ykdetail.Select(Me.bs_detail.Filter, "")    '//세부내역중 두께를 합치는 루틴입니다.
 | |
|             'Try
 | |
|             If Dr.설명 = "공기층" Then
 | |
|                 Dr.열전도율 = ""
 | |
|                 If TOSG(Dr.두께) > 10.0 Then
 | |
|                     Dr.열저항 = TOST(0.086)
 | |
|                     R_value += 0.086
 | |
|                 Else
 | |
|                     Dr.열저항 = TOST(TOSG(Dr.두께) * 0.0086)
 | |
|                     R_value = R_value + TOSG(Dr.두께) * 0.0086
 | |
|                 End If
 | |
|             Else  '//여기아래 추가하신거에요?
 | |
| 
 | |
|                 If Dr.설명.IndexOf("열전달저항") <> -1 Then
 | |
|                     Dr.두께 = ""
 | |
|                     Dr.열전도율 = ""
 | |
|                     Select Case Dr.설명
 | |
|                         Case "실내열전달저항(벽체)"
 | |
|                             Dr.열저항 = TOST(0.11)
 | |
|                             R_value += 0.11
 | |
|                         Case "실외열전달저항(벽체,간접)"
 | |
|                             Dr.열저항 = TOST(0.11)
 | |
|                             R_value += 0.11
 | |
|                         Case "실외열전달저항(벽체,직접)"
 | |
|                             Dr.열저항 = TOST(0.043)
 | |
|                             R_value += 0.043
 | |
|                         Case "실내열전달저항(바닥)"
 | |
|                             Dr.열저항 = TOST(0.086)
 | |
|                             R_value += 0.086
 | |
|                         Case "실외열전달저항(바닥,간접)"
 | |
|                             Dr.열저항 = TOST(0.15)
 | |
|                             R_value += 0.15
 | |
|                         Case "실외열전달저항(바닥,직접)"
 | |
|                             Dr.열저항 = TOST(0.043)
 | |
|                             R_value += 0.043
 | |
|                         Case "실내열전달저항(지붕)"
 | |
|                             Dr.열저항 = TOST(0.086)
 | |
|                             R_value += 0.086
 | |
|                         Case "실외열전달저항(지붕,간접)"
 | |
|                             Dr.열저항 = TOST(0.086)
 | |
|                             R_value += 0.086
 | |
|                         Case "실외열전달저항(지붕,직접)"
 | |
|                             Dr.열저항 = TOST(0.043)
 | |
|                             R_value += 0.043
 | |
| 
 | |
|                     End Select
 | |
| 
 | |
|                 Else
 | |
|                     If Dr.열전도율 <> "" AndAlso TOSG(Dr.열전도율) <> 0 Then
 | |
|                         Dr.열저항 = TOSG(Math.Round(TOSG(Dr.두께) / 1000 / TOSG(Dr.열전도율), 4)).ToString
 | |
|                         R_value += TOSG(Dr.열저항)  '//여부분에서는 나올수잇겟군요.?예
 | |
|                     End If
 | |
| 
 | |
|                 End If
 | |
| 
 | |
|             End If
 | |
|            
 | |
| 
 | |
|             If Dr.설명.IndexOf("열전달저항") = -1 Then
 | |
|                 width += TOSG(Dr.두께)
 | |
|             End If
 | |
|         Next
 | |
| 
 | |
|         Try
 | |
|             If cmb_형태.Text = "외부창" OrElse cmb_형태.Text = "내부창" Then
 | |
|                 Me.열관류율NTb.Text = Me.NTb_창호열관류율.Text
 | |
|             Else
 | |
|                 Me.열관류율NTb.Text = CSng(Math.Round(1 / R_value, 3)).ToString
 | |
|             End If
 | |
|         Catch ex As Exception
 | |
|             Me.열관류율NTb.Text = ""
 | |
|             'MsgBox("4. " & ex.Message.ToString)
 | |
|         End Try
 | |
| 
 | |
|         '  Me.MyTb1.Text = width.ToString("N2")
 | |
|         Me.UserControl11.MaxSize = width
 | |
|         'MsgBox(width)
 | |
| 
 | |
|         ' Me.Label1.Text = Me.UserControl11.Width
 | |
| 
 | |
|         '//  0.51 : me.wid = x : ?
 | |
| 
 | |
|         '  Me.UserControl11.Vertical = True
 | |
|         Dim FT(Me.arindv1.RowCount - 1) As mn.UserControl1.SM
 | |
|         For i As Integer = 0 To Me.arindv1.RowCount - 1
 | |
|             '//아까 열표시해서 검정색 선택해보니 검정은 값이 0 이 나오더라구요
 | |
|             '//실재로 0값이 근데 표시가안됫어요 그러므로
 | |
| 
 | |
|             Try
 | |
|                 FT(i).BColor = Color.FromArgb(Me.arindv1.Rows(i).Cells("후경색").Value)
 | |
| 
 | |
|             Catch ex As Exception
 | |
|                 FT(i).BColor = Color.FromName("white")
 | |
|                 'MsgBox("5. " & ex.Message.ToString)
 | |
|             End Try
 | |
|             Try
 | |
|                 If Me.arindv1.Rows(i).Cells("전경색").Value = "0" Then
 | |
|                     FT(i).FColor = Color.Black
 | |
|                 Else
 | |
|                     FT(i).FColor = Color.FromArgb(Me.arindv1.Rows(i).Cells("전경색").Value)
 | |
|                 End If
 | |
| 
 | |
|             Catch ex As Exception
 | |
|                 FT(i).FColor = Color.FromName("black")
 | |
|                 ' MsgBox("6. " & ex.Message.ToString)
 | |
|             End Try
 | |
|             ' FT(i).Style=            
 | |
|             Try
 | |
|                 FT(i).Style = Val(Me.arindv1.Rows(i).Cells("구분").Value)
 | |
|             Catch ex As Exception
 | |
|                 FT(i).Style = Drawing2D.HatchStyle.Cross
 | |
|                 'MsgBox("7. " & ex.Message.ToString)
 | |
|             End Try
 | |
| 
 | |
| 
 | |
|            
 | |
|             Try
 | |
|                 FT(i).Width = Me.arindv1.Rows(i).Cells("두께").Value
 | |
|             Catch ex As Exception
 | |
|                 'MsgBox("8. " & ex.Message.ToString)
 | |
|             End Try
 | |
| 
 | |
| 
 | |
|         Next
 | |
|         Me.UserControl11.M1FillType = FT
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub arindv1_CellFormatting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) Handles arindv1.CellFormatting
 | |
|         Try
 | |
|             Me.arindv1.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.FromArgb(Me.arindv1.Rows(e.RowIndex).Cells("후경색").Value)
 | |
|             ' Me.arindv1.Rows(e.RowIndex).DefaultCellStyle.ForeColor = Color.FromName(Me.arindv1.Rows(e.RowIndex).Cells("전경색").Value)
 | |
|         Catch ex As Exception
 | |
|             Me.arindv1.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.White
 | |
|             'MsgBox("9. " & ex.Message.ToString)
 | |
|         End Try
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
| 
 | |
|     Private Sub Arindv1_CellValidated(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles arindv1.CellValidated
 | |
|         refresh_Image()
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub Arindv1_DataError(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewDataErrorEventArgs)
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub Arindv1_RowValidated(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs)
 | |
|         refresh_Image()
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
 | |
|         'Try
 | |
|         Me.bs_detail.AddNew()
 | |
|         Me.bs_detail.EndEdit()
 | |
|         refresh_Image()
 | |
|         'Catch ex As Exception
 | |
|         '    MsgBox(ex.Message.ToString)
 | |
| 
 | |
|         '    MsgBox("상위코드 선택하세요", MsgBoxStyle.Critical, "확인")
 | |
|         'End Try
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click
 | |
|         If Me.bs_detail.Count > 0 Then Me.bs_detail.RemoveCurrent()
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub arindv1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles arindv1.CellContentClick
 | |
|         Select Case e.ColumnIndex
 | |
|             Case 8  '//전경
 | |
|                 Dim Cd As New ColorDialog
 | |
|                 Cd.Color = Color.FromName(Me.arindv1.Rows(e.RowIndex).Cells("전경색").Value)
 | |
|                 If Cd.ShowDialog <> Windows.Forms.DialogResult.OK Then Return
 | |
|                 Me.arindv1.Rows(e.RowIndex).Cells("전경색").Value = Cd.Color.ToArgb
 | |
|                 Me.btn_전경색.BackColor = Cd.Color
 | |
|                 Me.bs_detail.EndEdit()
 | |
|                 refresh_Image()
 | |
|             Case 9  '//배경
 | |
|                 Dim Cd As New ColorDialog
 | |
|                 Cd.Color = Color.FromName(Me.arindv1.Rows(e.RowIndex).Cells("후경색").Value)
 | |
|                 If Cd.ShowDialog <> Windows.Forms.DialogResult.OK Then Return
 | |
|                 Me.arindv1.Rows(e.RowIndex).Cells("후경색").Value = Cd.Color.ToArgb
 | |
|                 Me.btn_후경색.BackColor = Cd.Color
 | |
|                 Me.bs_detail.EndEdit()
 | |
|                 refresh_Image()
 | |
|         End Select
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub arindv1_DataError1(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewDataErrorEventArgs) Handles arindv1.DataError
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub cmb_형태_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb_형태.SelectedIndexChanged
 | |
|         If cmb_형태.Text = "외벽(지붕)" OrElse cmb_형태.Text = "외벽(바닥)" OrElse cmb_형태.Text = "내벽(지붕)" OrElse cmb_형태.Text = "내벽(바닥)" Then
 | |
|             Me.UserControl11.Vertical = False
 | |
|         Else
 | |
|             Me.UserControl11.Vertical = True
 | |
|         End If
 | |
|         Me.refresh_Image()
 | |
|         If cmb_형태.Text = "외부창" OrElse cmb_형태.Text = "내부창" Then
 | |
|             Me.NTb_창호열관류율.Visible = True
 | |
|             Me.NTb_일사에너지투과율.Visible = True
 | |
|             Me.NTb_창호세부설명.Visible = True
 | |
|             Me.lbl_창호열관류율.ForeColor = Color.Black
 | |
|             Me.lbl_일사에너지투과율.ForeColor = Color.Black
 | |
|             Me.lbl_창호세부설명.ForeColor = Color.Black
 | |
|         Else
 | |
|             Me.NTb_창호열관류율.Visible = False
 | |
|             Me.NTb_일사에너지투과율.Visible = False
 | |
|             Me.NTb_창호세부설명.Visible = False
 | |
|             Me.lbl_창호열관류율.ForeColor = Color.LightGray
 | |
|             Me.lbl_일사에너지투과율.ForeColor = Color.LightGray
 | |
|             Me.lbl_창호세부설명.ForeColor = Color.LightGray
 | |
| 
 | |
|         End If
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click
 | |
|         Dim Drv As DataRowView = Me.bs_detail.Current
 | |
|         Dim 전경 As String
 | |
|         Try
 | |
|             전경 = Drv("전경색").ToString
 | |
|         Catch ex As Exception
 | |
|             'MsgBox("10. " & ex.Message.ToString)
 | |
|         End Try
 | |
|         Dim 후경 As String
 | |
|         Try
 | |
|             후경 = Drv("후경색").ToString
 | |
|         Catch ex As Exception
 | |
|             'MsgBox("11. " & ex.Message.ToString)
 | |
|         End Try
 | |
|         Dim A As New Frm_DisplayGubun(전경, 후경)
 | |
|         A.Show()
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub SplitContainer1_Panel2_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles SplitContainer1.Panel2.Paint
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub bs_detail_CurrentChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bs_detail.CurrentChanged
 | |
|         Try
 | |
|             Dim Drv As DataRowView = CType(Me.bs_detail.Current, DataRowView)
 | |
|             Me.btn_전경색.BackColor = Color.FromArgb(Drv("전경색").ToString)
 | |
|             Me.btn_후경색.BackColor = Color.FromArgb(Drv("후경색").ToString)
 | |
|         Catch ex As Exception
 | |
|             Me.btn_전경색.BackColor = Color.White
 | |
|             Me.btn_후경색.BackColor = Color.White
 | |
|             'MsgBox("12. " & ex.Message.ToString)
 | |
|         End Try
 | |
| 
 | |
|         Dim Fil As String = "gubun='1089' and name='" & Me.cmb_재료.Text & "'"
 | |
|         ' Try '//열전도갱신
 | |
| 
 | |
|         Me.cmb_열전도율.Items.Clear()
 | |
|         Try
 | |
|             Dim Dr As DS.tbl_commonRow = DSET.tbl_common.Select(Fil)(0)
 | |
|             Me.cmb_열전도율.Items.Add(Dr.valn1)
 | |
|         Catch ex As Exception
 | |
|             '    MsgBox("13. " & ex.Message.ToString & vbCrLf & Fil)
 | |
|         End Try
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|         Me.bs_detail.EndEdit()
 | |
|         Me.refresh_Image()
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub btn_전경색_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_전경색.Click
 | |
| 
 | |
|         Try
 | |
|             Dim Cd As New ColorDialog
 | |
| 
 | |
|             If Cd.ShowDialog <> Windows.Forms.DialogResult.OK Then Return
 | |
|             Me.btn_전경색.BackColor = Cd.Color
 | |
| 
 | |
|             Dim Drv As DataRowView = Me.bs_detail.Current
 | |
|             Drv("전경색") = Cd.Color.ToArgb
 | |
| 
 | |
|         Catch ex As Exception
 | |
|             Me.btn_전경색.BackColor = Color.White
 | |
|             'MsgBox("14. " & ex.Message.ToString)
 | |
|         End Try
 | |
|         Me.bs_detail.EndEdit()
 | |
|         Me.refresh_Image()
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub cmb_재료_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb_재료.SelectedIndexChanged
 | |
|         If Me.bs_detail.Count < 1 Then Return '// ep데이터가없을경우 무시
 | |
| 
 | |
| 
 | |
|        
 | |
|         Dim 재료코드 As String
 | |
|         If Me.cmb_재료.SelectedIndex >= 0 Then
 | |
|             If UserCommin = False Then
 | |
|                 'UserCommin = True
 | |
|                 Return
 | |
|             End If
 | |
| 
 | |
|             'MsgBox(Me.cmb_재료.Text)
 | |
| 
 | |
|             '//여기가 재로를 선택하는 순간이에요
 | |
| 
 | |
|             '//해당열전도율가져오기
 | |
|             Try
 | |
|                 Dim Dr As DS.tbl_commonRow = DSET.tbl_common.Select(bS_재료.Filter & " and name='" & Me.cmb_재료.Text & "'")(0)
 | |
|                 재료코드 = Dr.code
 | |
|                 Me.cmb_열전도율.Items.Clear()
 | |
|                 Try '// 20110210 Try문 추가 (열전달저항 관련 Null 값에 의한 재료코드에러수정)
 | |
|                     Me.cmb_열전도율.Items.Add(Dr.valn1)
 | |
|                 Catch ex As Exception
 | |
| 
 | |
|                 End Try
 | |
| 
 | |
|                 'Me.tb_열전도.Text = Dr.valn1
 | |
|                 ' MsgBox(Dr.valn1)
 | |
| 
 | |
|             Catch ex As Exception
 | |
|                 'MsgBox(ex.Message.ToString)
 | |
|                 'MsgBox("15. " & ex.Message.ToString)
 | |
|             End Try
 | |
| 
 | |
|             '//색및 패턴명 가져오기
 | |
|             Dim DetailDrv As DataRowView = Me.bs_detail.Current
 | |
|             DetailDrv("설명") = Me.cmb_재료.Text
 | |
|             Dim Er As Boolean = False
 | |
| 
 | |
|             Dim Dr2() As DS.tbl_commonRow = DSET.tbl_common.Select("gubun='1090' and code='" & 재료코드 & "'")
 | |
|             If Dr2.GetUpperBound(0) = -1 Then
 | |
|                 DetailDrv("전경색") = Color.Blue.ToArgb
 | |
|                 DetailDrv("후경색") = Color.White.ToArgb '//디비에 해당설ㅈㅇ이 없을경우 행하는 코드들
 | |
|                 DetailDrv("구분") = "5"
 | |
|                 Me.btn_전경색.BackColor = Color.FromArgb(DetailDrv("전경색"))
 | |
|                 Me.btn_후경색.BackColor = Color.FromArgb(DetailDrv("후경색"))
 | |
|             Else  '//디비에 있을경우
 | |
|                 Try
 | |
|                     DetailDrv("전경색") = Dr2(0)("name").ToString.Split(",")(0)
 | |
|                 Catch ex As Exception
 | |
|                     DetailDrv("전경색") = Color.Black.ToArgb
 | |
|                     'MsgBox("16. " & ex.Message.ToString)
 | |
|                 End Try
 | |
|                 Try
 | |
|                     DetailDrv("후경색") = Dr2(0)("name").ToString.Split(",")(1)
 | |
|                 Catch ex As Exception
 | |
|                     DetailDrv("후경색") = Color.White.ToArgb
 | |
|                     ' MsgBox("17. " & ex.Message.ToString)
 | |
|                 End Try
 | |
|                 DetailDrv("구분") = CInt(Dr2(0)("valn1"))
 | |
|                 Me.btn_후경색.BackColor = Color.FromArgb(DetailDrv("후경색"))
 | |
|                 Me.btn_전경색.BackColor = Color.FromArgb(DetailDrv("전경색"))
 | |
|             End If
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|             Me.bs_detail.EndEdit()
 | |
|             Me.refresh_Image()
 | |
|             UserCommin = False
 | |
|         End If
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub btn_후경색_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_후경색.Click
 | |
| 
 | |
|         Try
 | |
|             Dim Cd As New ColorDialog
 | |
| 
 | |
|             If Cd.ShowDialog <> Windows.Forms.DialogResult.OK Then Return
 | |
|             Me.btn_후경색.BackColor = Cd.Color
 | |
| 
 | |
|             Dim Drv As DataRowView = Me.bs_detail.Current
 | |
|             Drv("후경색") = Cd.Color.ToArgb
 | |
| 
 | |
|         Catch ex As Exception
 | |
|             Me.btn_후경색.BackColor = Color.White
 | |
|             'MsgBox("18. " & ex.Message.ToString)
 | |
|         End Try
 | |
|         Me.bs_detail.EndEdit()
 | |
|         Me.refresh_Image()
 | |
| 
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub cmb_열전도율_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb_열전도율.SelectedIndexChanged
 | |
|         Me.bs_detail.EndEdit()
 | |
|         Me.refresh_Image()
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub cmb_열전도율_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmb_열전도율.TextChanged
 | |
|         Me.bs_detail.EndEdit()
 | |
|         Me.refresh_Image()
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub cmb_재료_SelectionChangeCommitted(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmb_재료.SelectionChangeCommitted
 | |
|         Me.UserCommin = True
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub NTb_창호열관류율_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NTb_창호열관류율.TextChanged
 | |
|         If cmb_형태.Text = "외부창" OrElse cmb_형태.Text = "내부창" Then
 | |
|             Me.열관류율NTb.Text = Me.NTb_창호열관류율.Text
 | |
|         End If
 | |
|     End Sub
 | |
| 
 | |
|     Private Sub dv_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dv.CellContentClick
 | |
| 
 | |
|     End Sub
 | |
| End Class
 | 
