Files
Hanjeon/Epole.fp13/출력폼/PrintFormCable.vb
2020-05-24 21:15:53 +09:00

3633 lines
179 KiB
VB.net

Imports System.Drawing
Imports System.Drawing.Printing
Imports System.Math
Imports System.IO
Imports ThoughtWorks.QRCode.Codec '//QR코드
Imports ThoughtWorks.QRCode.Codec.Util
Imports ThoughtWorks.QRCode.Codec.Data
Public Class printformCable
Dim DrStyle As PatternDS.TStyleRow = Nothing
Dim DtPattern As PatternDS.TPatternDataTable = Nothing
Dim AllLabels() As Str_Alllabels '//전체갯수는 추가할대 셋팅한다.
Dim S관리구(0) As MyControlOLEDBv2.MyLabel
Dim S전산번호(0) As MyControlOLEDBv2.MyLabel
Dim 관리구 As String
Dim 전산번호 As String
Dim SS0번호1(0) As MyControlOLEDBv2.MyLabel
Dim SS0번호2(0) As MyControlOLEDBv2.MyLabel
Dim SS0번호3(0) As MyControlOLEDBv2.MyLabel
Dim SS0번호4(0) As MyControlOLEDBv2.MyLabel
Dim SS0SW명(0) As MyControlOLEDBv2.MyLabel
Dim SS0수용가(0) As MyControlOLEDBv2.MyLabel
Dim S0번호1 As String
Dim S0번호2 As String
Dim S0번호3 As String
Dim S0번호4 As String
Dim S0SW명 As String
Dim S0수용가 As String
Dim SS0SS(0) As MyControlOLEDBv2.MyLabel
Dim SS0DL(0) As MyControlOLEDBv2.MyLabel
Dim S0SS명 As String
Dim S0DL명 As String
Dim SS1번호1(0) As MyControlOLEDBv2.MyLabel
Dim SS1번호2(0) As MyControlOLEDBv2.MyLabel
Dim SS1번호3(0) As MyControlOLEDBv2.MyLabel
Dim SS1번호4(0) As MyControlOLEDBv2.MyLabel
Dim SS1SW명(0) As MyControlOLEDBv2.MyLabel
Dim SS1위치(0) As MyControlOLEDBv2.MyLabel
Dim S1번호1 As String
Dim S1번호2 As String
Dim S1번호3 As String
Dim S1번호4 As String
Dim S1SW명 As String
Dim S1위치 As String
Dim SS1SS(0) As MyControlOLEDBv2.MyLabel
Dim SS1DL(0) As MyControlOLEDBv2.MyLabel
Dim S1SS명 As String
Dim S1DL명 As String
Dim SS2번호1(0) As MyControlOLEDBv2.MyLabel
Dim SS2번호2(0) As MyControlOLEDBv2.MyLabel
Dim SS2번호3(0) As MyControlOLEDBv2.MyLabel
Dim SS2번호4(0) As MyControlOLEDBv2.MyLabel
Dim SS2SW명(0) As MyControlOLEDBv2.MyLabel
Dim SS2위치(0) As MyControlOLEDBv2.MyLabel
Dim S2번호1 As String
Dim S2번호2 As String
Dim S2번호3 As String
Dim S2번호4 As String
Dim S2SW명 As String
Dim S2위치 As String
Dim SS2SS(0) As MyControlOLEDBv2.MyLabel
Dim SS2DL(0) As MyControlOLEDBv2.MyLabel
Dim S2SS명 As String
Dim S2DL명 As String
Dim SS3번호1(0) As MyControlOLEDBv2.MyLabel
Dim SS3번호2(0) As MyControlOLEDBv2.MyLabel
Dim SS3번호3(0) As MyControlOLEDBv2.MyLabel
Dim SS3번호4(0) As MyControlOLEDBv2.MyLabel
Dim SS3SW명(0) As MyControlOLEDBv2.MyLabel
Dim SS3위치(0) As MyControlOLEDBv2.MyLabel
Dim S3번호1 As String
Dim S3번호2 As String
Dim S3번호3 As String
Dim S3번호4 As String
Dim S3SW명 As String
Dim S3위치 As String
Dim SS3SS(0) As MyControlOLEDBv2.MyLabel
Dim SS3DL(0) As MyControlOLEDBv2.MyLabel
Dim S3SS명 As String
Dim S3DL명 As String
Dim SS4번호1(0) As MyControlOLEDBv2.MyLabel
Dim SS4번호2(0) As MyControlOLEDBv2.MyLabel
Dim SS4번호3(0) As MyControlOLEDBv2.MyLabel
Dim SS4번호4(0) As MyControlOLEDBv2.MyLabel
Dim SS4SW명(0) As MyControlOLEDBv2.MyLabel
Dim SS4위치(0) As MyControlOLEDBv2.MyLabel
Dim S4번호1 As String
Dim S4번호2 As String
Dim S4번호3 As String
Dim S4번호4 As String
Dim S4SW명 As String
Dim S4위치 As String
Dim SS4SS(0) As MyControlOLEDBv2.MyLabel
Dim SS4DL(0) As MyControlOLEDBv2.MyLabel
Dim S4SS명 As String
Dim S4DL명 As String
Dim S시공년월(0) As MyControlOLEDBv2.MyLabel
Dim S시공회사(0) As MyControlOLEDBv2.MyLabel
Dim S공사번호(0) As MyControlOLEDBv2.MyLabel
Dim S감독자(0) As MyControlOLEDBv2.MyLabel
Dim 시공년월 As String
Dim 시공회사 As String
Dim 공사번호 As String
Dim 감독자 As String
Dim S비고1(0) As MyControlOLEDBv2.MyLabel
Dim S비고2(0) As MyControlOLEDBv2.MyLabel
Dim S비고3(0) As MyControlOLEDBv2.MyLabel
Dim S비고4(0) As MyControlOLEDBv2.MyLabel
Dim S비고5(0) As MyControlOLEDBv2.MyLabel
Dim S비고6(0) As MyControlOLEDBv2.MyLabel
Dim 비고1 As String
Dim 비고2 As String
Dim 비고3 As String
Dim 비고4 As String
Dim 비고5 As String
Dim 비고6 As String
Dim st공사번호(0), st공사번호2(0) As MyControlOLEDBv2.MyLabel
Dim st설치년월(0), st설치년월2(0) As MyControlOLEDBv2.MyLabel
Dim st시공업체(0), st시공업체2(0) As MyControlOLEDBv2.MyLabel
Dim st감독자(0), st감독자2(0) As MyControlOLEDBv2.MyLabel
Dim stSS1(0), stss2(0), stSS3(0), stss4(0), stSS5(0) As MyControlOLEDBv2.MyLabel
Dim stdl1(0), stdl2(0), stdl3(0), stdl4(0), stdl5(0) As MyControlOLEDBv2.MyLabel
Dim st전산번호(0) As MyControlOLEDBv2.MyLabel
Dim S번호(0) As MyLabel
Dim NoView As Boolean = False '//LOAD_STYLE 을 잠시 실행하지 않기위햇(중복실행방지)서 둔다.(..이벤트가.. -_-;;너무 중복으로 발생함)
Dim SrcIdx As Integer = -1 '//원본 리뷰에서 클릭된 인덱스
Dim Srcnum As Integer = -1 '//원본 리뷴에서 클릭된 번호값
Dim Srcrow As DataRowView
Dim FirstIdx As Integer = -1 '//새로 생성된 리뷰에서 적용될 인덱스
'Public File As String = My.Application.Info.DirectoryPath & "\style.ini" '//스타일 파일
Dim StyleDir As New System.IO.DirectoryInfo(My.Application.Info.DirectoryPath & "\styleCAB")
Public FileC As String = My.Application.Info.DirectoryPath & "\styleCECAB.ini" '//사용자 스타일 파일
Private WithEvents pDoc As New PrintDocument()
Dim SelCon As New ArrayList '//선택된 레이블들이 저장된 배열이다.
Dim onlyOne As MyControlOLEDBv2.MyLabel '//포커스를 가진 레이블이다.
Dim srcTable As ireaDataSet.Detail_CableDataTable '//데이터가 저장될 테이블
Dim Dv As DataView '//데이터뷰(실제로 이 뷰의 데이터를 가지고 출력을 행한다.)
Dim printindex As Integer = 0 '//프린트되는 페이지 번호 이값이 -1 이면 현재페이지이므로 갱신하지 않고 출력한다.
Dim PrintArray() As Integer '//프린트할 페이지의 배열번호
Dim SettingFile As String = My.Application.Info.DirectoryPath & "\epole.ini" '//환경설정 파일
Dim PrintMode As Boolean = False
Public Sub New()
InitializeComponent()
WLog2(Auto_Log, "New()", "\지중(케이블)순차로그.txt")
End Sub
Public Sub New(ByRef Src As ireaDataSet.Detail_CableDataTable, Optional ByVal IRow As DataRowView = Nothing)
InitializeComponent()
WLog2(Auto_Log, "New(srctable,srcRow)", "\지중(케이블)순차로그.txt")
srcTable = Src '//가져온 테이블을 임시테이블에 저장을 해두고 사용한다.
Srcrow = IRow '//이것은 클릭된 행번호이다. 이 행번호를 가지고 스타일을 판별한다
End Sub
Private Sub printform_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
'If Not BackWork Is Nothing Then BackWork = Nothing
'Me.CustFP1.ColSize_Save()
Me.dataview.Setting_Save(False, "printjjungCAB", "\viewConfig\JijungCAB_")
WLog2(Auto_Log, "Form_Close", "\지중(케이블)순차로그.txt")
Save_Setting()
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.dataview.Setting_Load(False, "printjjungCAB", "\viewConfig\JijungCAB_")
Me.SetStyle(ControlStyles.AllPaintingInWmPaint Or ControlStyles.UserPaint Or ControlStyles.DoubleBuffer, True) '//더블버퍼링
WLog2(Auto_Log, "Form_Load()", "\지중(케이블)순차로그.txt")
GetPrintersName() '//프린터명을 가져옵니다.
Load_Setting()
SetControls() '//컨트롤을 초기화하고 셋팅한다.
If srcTable Is Nothing Then
'MsgBox("소스가없어서 기본셋팅으로 전환함")
WLog2(Auto_Log, "개발자 기본셋팅으로 전환()", "\지중(케이블)순차로그.txt")
Common.Auto_Log = True
Me.NoView = True
'Me.detTableAdapter1.Connection.ConnectionString = ConString
'Me.detTableAdapter1.Fill(Me.IreaDataSet1.jjungtable, 1)
'Me.srcTable = Me.IreaDataSet1.jjungtable
Admin = True
End If
WLog2(Auto_Log, "개발자모드=" & Admin.ToString, "\지중(케이블)순차로그.txt")
If Admin Then
For Each A As Control In Me.TabPage3.Controls
If A.GetType.Name.ToUpper = "CHECKBOX" Then
A.Visible = True
End If
Next
End If
Me.SETTOOLTIP()
GetStyleList() '//style.ini 에서 스타일목록명만 가져온다.
If Srcrow Is Nothing Then '//가져온 행값이인덱스가 없으므로 1번째 스타일을 지정한다.
WLog2(Auto_Log, "가져온 행값이 없습니다. firstidx=0 / 일반용으로 셋팅합니다()", "\지중(케이블)순차로그.txt")
FirstIdx = 0 '//또한 맨 처음 데이터를 표시하게된다.
'Me.cmb_style.Text = "일반용" '//여기서 데이터가 걸러지게된다.
Me.cmb_style.Text = "지상개폐기"
Else
Srcnum = Srcrow("번호") 'srcTable.Rows(SrcIdx).Item("번호")
'MsgBox(Srcrow("비고1").ToString)
Dim 상별 As String
Try
상별 = Srcrow("변압기상").ToString.Trim
Catch ex As Exception
' MsgBox(ex.Message.ToString)
상별 = ""
End Try
If 상별 = "" Then
Me.cmb_style.Text = "지상개폐기"
Else
Me.cmb_style.Text = "지상변압기"
End If
End If
If Me.cmb_style.SelectedIndex < 0 AndAlso Me.cmb_style.Items.Count > 0 Then Me.cmb_style.SelectedIndex = 0
End Sub
Private Sub printform_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
'If SelCon Is Nothing Then Return
'Dim Tobj As MyControlOLEDBv2.MyLabel
Select Case e.KeyCode
Case Keys.Up
If e.Shift Then '//글씨높이
Me.CtrSize(True, -1)
Else
Me.CtrPos(True, -1)
End If
'Me.ViewProperty(SelCon(0))
e.Handled = True
Case Keys.Down
If e.Shift Then
Me.CtrSize(True, 1)
Else
Me.CtrPos(True, 1)
End If
'ViewProperty(Tobj)
e.Handled = True
Case Keys.Left
If e.Shift Then
Me.CtrSize(False, -1)
Else
Me.CtrPos(False, -1)
End If
'ViewProperty(Tobj)
e.Handled = True
Case Keys.Right
If e.Shift Then
Me.CtrSize(False, 1)
Else
Me.CtrPos(False, 1)
End If
'ViewProperty(Tobj)
e.Handled = True
Case Keys.S
If e.Control Then
' Me.BT_JNUMCSAVE.PerformClick()
End If
Case Keys.F7
Me.bt_print.PerformButtonClick()
Case Keys.F8
Me.bt_prnpreview.PerformClick()
End Select
End Sub
Private Sub AddControl(ByRef CtlCnt As Short, ByVal 설명 As String, ByVal tag As String, ByVal Labels() As MyControlOLEDBv2.MyLabel, ByRef Cb As CheckBox, Optional ByVal bPattern As String = "")
Cb.Tag = tag
Cb.Text = 설명
For i As Integer = 0 To Labels.GetUpperBound(0) '//모든문자를 할당한다.
Labels(i) = New MyControlOLEDBv2.MyLabel
Labels(i).설명 = 설명 & i + 1
Labels(i).DIV = tag
Labels(i).Name = tag & i + 1
Labels(i).TextValue = ""
Labels(i).Repeat = 0
Labels(i).RepeatX = 0
Labels(i).RepeatY = 0
Labels(i).Pattern = bPattern
ReDim Preserve AllLabels(CtlCnt)
Me.AllLabels(CtlCnt).ctl = Labels(i)
Me.cmb_controls.Items.Add(Labels(i).설명)
CtlCnt += 1
Next
Labels(0).CheckBox = Cb
Labels(0).Pattern = bPattern
End Sub
Private Sub SetControls()
WLog2(Auto_Log, "SetControls()", "\지중(케이블)순차로그.txt")
Dim CtlCnt As Short = 0
AddControl(CtlCnt, "번호", "XX", Me.S번호, Me.cb_seq)
AddControl(CtlCnt, "관리구", "AA", Me.S관리구, Me.CB_KWAN, "KWANPATTERN")
AddControl(CtlCnt, "전산번호", "AB", Me.S전산번호, Me.CB_JUNSA, "JUNNUMPATTERN")
AddControl(CtlCnt, "(현재)단자1", "AI", Me.SS0번호1, Me.cb_ai, "S01PATTERN")
AddControl(CtlCnt, "(현재)단자2", "AJ", Me.SS0번호2, Me.cb_aj, "S02PATTERN")
AddControl(CtlCnt, "(현재)단자3", "AK", Me.SS0번호3, Me.cB_ak, "S03PATTERN")
AddControl(CtlCnt, "(현재)단자4", "AL", Me.SS0번호4, Me.cb_al, "S04PATTERN")
AddControl(CtlCnt, "(현재)구간", "AM", Me.SS0SW명, Me.cb_am, "S0SWPATTERN")
AddControl(CtlCnt, "(현재)위치", "AN", Me.SS0수용가, Me.cb_an, "S0SUPATTERN")
AddControl(CtlCnt, "(현재)S/S", "CN", Me.SS0SS, Me.cb_CN, "S0SSPATTERN")
AddControl(CtlCnt, "(현재)D/L", "CO", Me.SS0DL, Me.cb_CO, "S0DLPATTERN")
AddControl(CtlCnt, "(상대1)단자1", "AO", Me.SS1번호1, Me.cb_ao, "S11PATTERN")
AddControl(CtlCnt, "(상대1)단자2", "AP", Me.SS1번호2, Me.cb_ap, "S12PATTERN")
AddControl(CtlCnt, "(상대1)단자3", "AQ", Me.SS1번호3, Me.cb_aq, "S13PATTERN")
AddControl(CtlCnt, "(상대1)단자4", "AR", Me.SS1번호4, Me.cb_ar, "S14PATTERN")
AddControl(CtlCnt, "(상대1)구간", "AS", Me.SS1SW명, Me.cb_as, "S1SWPATTERN")
AddControl(CtlCnt, "(상대1)위치", "AT", Me.SS1위치, Me.cb_at, "S1SUPATTERN")
AddControl(CtlCnt, "(상대1)S/S", "CP", Me.SS1SS, Me.cb_CP, "S1SSPATTERN")
AddControl(CtlCnt, "(상대1)D/L", "CQ", Me.SS1DL, Me.cb_CQ, "S1DLPATTERN")
AddControl(CtlCnt, "(상대2)단자1", "AU", Me.SS2번호1, Me.cb_au, "S21PATTERN")
AddControl(CtlCnt, "(상대2)단자2", "AV", Me.SS2번호2, Me.cb_av, "S22PATTERN")
AddControl(CtlCnt, "(상대2)단자3", "AW", Me.SS2번호3, Me.cB_aw, "S23PATTERN")
AddControl(CtlCnt, "(상대2)단자4", "AX", Me.SS2번호4, Me.cb_ax, "S24PATTERN")
AddControl(CtlCnt, "(상대2)구간", "AY", Me.SS2SW명, Me.cb_ay, "S2SWPATTERN")
AddControl(CtlCnt, "(상대2)위치", "AZ", Me.SS2위치, Me.cb_az, "S2SUPATTERN")
AddControl(CtlCnt, "(상대2)S/S", "CR", Me.SS2SS, Me.cb_cR, "S2SSPATTERN")
AddControl(CtlCnt, "(상대2)D/L", "CS", Me.SS2DL, Me.cb_CS, "S2DLPATTERN")
AddControl(CtlCnt, "(상대3)단자1", "BA", Me.SS3번호1, Me.cb_ba, "S31PATTERN")
AddControl(CtlCnt, "(상대3)단자2", "BB", Me.SS3번호2, Me.cB_bb, "S32PATTERN")
AddControl(CtlCnt, "(상대3)단자3", "BC", Me.SS3번호3, Me.cb_bc, "S33PATTERN")
AddControl(CtlCnt, "(상대3)단자4", "BD", Me.SS3번호4, Me.cb_bd, "S34PATTERN")
AddControl(CtlCnt, "(상대3)구간", "BE", Me.SS3SW명, Me.cb_be, "S3SWPATTERN")
AddControl(CtlCnt, "(상대3)위치", "BF", Me.SS3위치, Me.cb_bf, "S3SUPATTERN")
AddControl(CtlCnt, "(상대3)S/S", "CT", Me.SS3SS, Me.cb_CT, "S3SSPATTERN")
AddControl(CtlCnt, "(상대3)D/L", "CU", Me.SS3DL, Me.cb_CU, "S3DLPATTERN")
AddControl(CtlCnt, "(상대4)단자1", "BG", Me.SS4번호1, Me.cb_bg, "S41PATTERN")
AddControl(CtlCnt, "(상대4)단자2", "BH", Me.SS4번호2, Me.cb_bh, "S42PATTERN")
AddControl(CtlCnt, "(상대4)단자3", "BI", Me.SS4번호3, Me.cb_bi, "S43PATTERN")
AddControl(CtlCnt, "(상대4)단자4", "BJ", Me.SS4번호4, Me.cb_bj, "S44PATTERN")
AddControl(CtlCnt, "(상대4)구간", "BK", Me.SS4SW명, Me.cB_bk, "S4SWPATTERN")
AddControl(CtlCnt, "(상대4)위치", "BL", Me.SS4위치, Me.cb_bl, "S4SUPATTERN")
AddControl(CtlCnt, "(상대4)S/S", "CV", Me.SS4SS, Me.cb_CV, "S4SSPATTERN")
AddControl(CtlCnt, "(상대4)D/L", "CW", Me.SS4DL, Me.cb_CW, "S4DLPATTERN")
AddControl(CtlCnt, "시공년월", "BM", Me.S시공년월, Me.cb_bm, "YMPATTERN")
AddControl(CtlCnt, "시공회사", "BN", Me.S시공회사, Me.cb_bn, "CMPATTERN")
AddControl(CtlCnt, "공사번호", "BO", Me.S공사번호, Me.cb_bo, "KONGNPATTERN")
AddControl(CtlCnt, "감독자", "BP", Me.S감독자, Me.cb_bp, "KAMDOKPATTERN")
AddControl(CtlCnt, "비고1", "BQ", Me.S비고1, Me.cb_bq)
AddControl(CtlCnt, "비고2", "BR", Me.S비고2, Me.cb_br)
AddControl(CtlCnt, "비고3", "BS", Me.S비고3, Me.cb_bs)
AddControl(CtlCnt, "비고4", "BT", Me.S비고4, Me.cb_bt)
AddControl(CtlCnt, "비고5", "BU", Me.S비고5, Me.cb_bu)
AddControl(CtlCnt, "비고6", "BV", Me.S비고6, Me.cb_bv)
AddControl(CtlCnt, "문자(공사번호)", "CA", Me.st공사번호, Me.cb_ca)
AddControl(CtlCnt, "문자(공사번호II)", "CB", Me.st공사번호2, Me.cb_cb)
AddControl(CtlCnt, "문자(설치년월)", "CC", Me.st설치년월, Me.cb_cc)
AddControl(CtlCnt, "문자(설치년월II)", "CD", Me.st설치년월2, Me.cb_cd)
AddControl(CtlCnt, "문자(시공업체)", "CE", Me.st시공업체, Me.cb_ce)
AddControl(CtlCnt, "문자(시공업체II)", "CF", Me.st시공업체2, Me.cb_cf)
AddControl(CtlCnt, "문자(감독자)", "CG", Me.st감독자, Me.cb_cg)
AddControl(CtlCnt, "문자(감독자II)", "CH", Me.st감독자2, Me.cb_ch)
AddControl(CtlCnt, "문자(S/S1)", "CI", Me.stSS1, Me.cb_ci)
AddControl(CtlCnt, "문자(S/S2)", "CJ", Me.stss2, Me.cb_cj)
AddControl(CtlCnt, "문자(S/S3)", "CX", Me.stSS3, Me.cb_cx)
AddControl(CtlCnt, "문자(S/S4)", "CY", Me.stss4, Me.cb_cy)
AddControl(CtlCnt, "문자(S/S5)", "CZ", Me.stSS5, Me.cb_cz)
AddControl(CtlCnt, "문자(D/L1)", "CK", Me.stdl1, Me.cb_ck)
AddControl(CtlCnt, "문자(D/L2)", "CL", Me.stdl2, Me.cb_cl)
AddControl(CtlCnt, "문자(D/L3)", "DA", Me.stdl3, Me.cb_da)
AddControl(CtlCnt, "문자(D/L4)", "DB", Me.stdl4, Me.cb_Db)
AddControl(CtlCnt, "문자(D/L5)", "DC", Me.stdl5, Me.cb_dc)
AddControl(CtlCnt, "문자(전산화번호)", "CM", Me.st전산번호, Me.cb_cm)
End Sub
Private Sub SETTOOLTIP()
WLog2(Auto_Log, "Settooltip()", "\지중(케이블)순차로그.txt")
Dim TMSG As New System.Text.StringBuilder()
TMSG.AppendLine()
TMSG.AppendLine("선택가능한 개체목록을 볼 수 잇습니다")
TMSG.AppendLine()
TMSG.AppendLine("화면에 보이지 않는 개체도 선택이 가능합니다")
TMSG.AppendLine()
Me.ToolTip1.SetToolTip(Me.cmb_controls, TMSG.ToString)
TMSG = New System.Text.StringBuilder("")
TMSG.AppendLine()
TMSG.AppendLine("선택된 개체들의 화면표시여부를 결정정합니다")
Me.ToolTip1.SetToolTip(Me.cb_visible, TMSG.ToString)
TMSG = New System.Text.StringBuilder()
TMSG.AppendLine()
TMSG.AppendLine("▼ 연속된 페이지는 -(마이너스) 로 구분합니다")
TMSG.AppendLine(" 예) 2페이지에서 8페이지까지 : 2-8")
TMSG.AppendLine()
TMSG.AppendLine("▼ 불규칙 페이지는 ,(콤마) 로 구분합니다")
TMSG.AppendLine(" 예) 1,3,4,10 페이지 : 1,3,4,7")
TMSG.AppendLine()
TMSG.AppendLine("▼ 각조건의 구분은 /(슬래쉬) 로 구분합니다")
TMSG.AppendLine(" 예) 2~8페이지와 11,15번 페이지 : 2-8/11,15")
TMSG.AppendLine()
Me.ToolTip1.SetToolTip(Me.RadioButton3, TMSG.ToString)
TMSG = New System.Text.StringBuilder()
TMSG.AppendLine()
TMSG.AppendLine("<개체들의 상태를 확인할 수 있습니다>")
TMSG.AppendLine()
TMSG.AppendLine("왼쪽클릭시 해당개체만 선택됩니다.")
TMSG.AppendLine("Ctrl + 왼쪽클릭시 해당개체가 속한 그룹이 선택됩니다.")
TMSG.AppendLine("우클릭시 선택된 개체가 추가됩니다(다중선택기능)")
TMSG.AppendLine()
TMSG.AppendLine("[번호출력시 색상구분]")
TMSG.AppendLine("흑색 : 문자패턴 적용")
TMSG.AppendLine("녹색 : 길이패턴 적용")
TMSG.AppendLine("적색 : 길이,문자패턴 미적용")
TMSG.AppendLine()
TMSG.AppendLine(">>환경설정에서 색상구분이 가능하도록 설정되어야 합니다")
TMSG.AppendLine()
Me.ToolTip1.SetToolTip(Me.PictureBox1, TMSG.ToString)
TMSG = New System.Text.StringBuilder()
TMSG.AppendLine()
TMSG.AppendLine("<사용할 프린터를 선택하세요>")
TMSG.AppendLine()
TMSG.AppendLine("아무것도 입력되지 않았으면 기본프린터로 출력됩니다.")
TMSG.AppendLine("현재 설치되어있는 프린터 목록이 표시됩니다.")
TMSG.AppendLine()
Me.combobox5.ToolTipText = TMSG.ToString
'Me.ToolTip1.SetToolTip(Me.ComboBox5, TMSG.ToString)
TMSG = New System.Text.StringBuilder()
TMSG.AppendLine()
TMSG.AppendLine("<2번째 장이 출력될 위치를 결정하세요.>")
TMSG.AppendLine()
TMSG.AppendLine("2번째 장이 출력될때 1번째장과의 왼쪽거리 값입니다. 0 으로할경우 동일한 X값이 됩니다.")
TMSG.AppendLine("같은 줄 아래쪽에 표시를 하려면 X=0 으로두고 Y=값을 임의로 입력하세요")
TMSG.AppendLine()
Me.ToolTip1.SetToolTip(Me.tb_secX, TMSG.ToString)
TMSG = New System.Text.StringBuilder()
TMSG.AppendLine()
TMSG.AppendLine("<2번째 장이 출력될 위치를 결정하세요.>")
TMSG.AppendLine()
TMSG.AppendLine("2번째 장이 출력될때 1번째장과의 위쪽거리 값입니다. 0 으로할경우 동일한 Y값이 됩니다.")
TMSG.AppendLine("같은 줄 아래쪽에 표시를 하려면 X=0 으로두고 Y=값을 임의로 입력하세요")
TMSG.AppendLine()
Me.ToolTip1.SetToolTip(Me.tb_secY, TMSG.ToString)
TMSG = New System.Text.StringBuilder()
TMSG.AppendLine()
TMSG.AppendLine("<2장 출력시 데이터의 출력방법을 선택하세요.>")
TMSG.AppendLine()
TMSG.AppendLine("[복사]는 현재데이터와 동일한 데이터가 표시됩니다.")
TMSG.AppendLine("[다음]은 다음데이터가 표시됩니다.")
TMSG.AppendLine()
TMSG.AppendLine("동일한 데이터를 한번더 출력하려면 [복사]를 선택하세요.")
TMSG.AppendLine("다음데이터까지 출력하려면 [다음]을 선택하세요")
Me.ToolTip1.SetToolTip(Me.cmb_dummy, TMSG.ToString)
TMSG = New System.Text.StringBuilder()
TMSG.AppendLine("녹색은 길이패턴만 적용된 아이템이며")
TMSG.AppendLine("적색은 길이,문자패턴이 존재하지 않는 아이템입니다")
TMSG.AppendLine("흑색은 문자패턴이나 길이,문자패턴이 존재하는 경우입니다.")
TMSG.AppendLine()
'Me.ToolTip1.SetToolTip(Me.X1, X1.설명 & vbCrLf & TMSG.ToString)
'Me.ToolTip1.SetToolTip(Me.X2, X2.설명 & vbCrLf & TMSG.ToString)
'Me.ToolTip1.SetToolTip(Me.X3, X3.설명 & vbCrLf & TMSG.ToString)
End Sub
Private Sub con_dclick(ByVal sender As Object, ByVal e As System.EventArgs)
WLog2(Auto_Log, "개체를 더블클릭했습니다.(이것은 사용되지 않음)", "\지중(케이블)순차로그.txt")
Dim Msg As New System.Text.StringBuilder("변경할 값을 입력하세요")
Msg.AppendLine("줄바꿈을하려면 \n 을 입력하세요")
Msg.AppendLine("예) 세로로 12를 출력하려면 1\n2 을 입력하세요")
Msg.AppendLine()
Msg.AppendLine("변경한 값은 현재페이지에만 적용됩니다")
Dim A As MyControlOLEDBv2.MyLabel = sender
Dim Val As String = InputBox(Msg.ToString, "변경", A.MyText)
If Val = "" Then Return
Val = Val.Replace("\n", vbCrLf)
A.MyText = Val
'//preview 는 아마도 픽쳐박스 더블클릭에서 정의한듯 하다.
End Sub
Private Sub Save_Setting()
WLog2(Auto_Log, "현재 설정(스타일)을 저장합니다.", "\지중(케이블)순차로그.txt")
Dim A As New MyINI2(SettingFile)
A.Write("PRINTFORM", "printername", Me.combobox5.Text) '//패턴검사조건 콤보박스
End Sub
Private Sub Load_Setting()
WLog2(Auto_Log, "현재설정(스타일)을 가져옵니다.()", "\지중(케이블)순차로그.txt")
WLog2(Auto_Log, "Load_Setting()", "\지중(케이블)순차로그.txt")
Dim a As New MyINI2(SettingFile)
Me.combobox5.Text = a.Read("PRINTFORM", "printername", "")
End Sub
Public Sub GeTviewData(ByVal index As Integer, ByVal previewWindow As Boolean, Optional ByRef 번호패턴검사 As Integer = -1)
' Dim STARTTIME, ENDTIME As Date
WLog2(Auto_Log, "GetviewData 진입()", "\지중(케이블)순차로그.txt")
If Dv.Count <= 0 OrElse index < 0 OrElse index > Dv.Count Then
WLog2(Auto_Log, "GetViewData : 인덱스가 없거나 문제가 잇어서 리턴합니다.()", "\지중(케이블)순차로그.txt")
' MsgBox("GETVIEWDATA : 데이터가 없거나 잘못된 인덱스 입니다", MsgBoxStyle.Information, "확인") ' & index & "/" & Me.CustFP1.ActiveSheet.RowCount & ")", MsgBoxStyle.Critical, "확인")
Return '//잘못된 인덱스는 리턴
End If
' STARTTIME = Now
'//현재 테이블에서 데이터를 표시한다. 현 테이블은 종류별로 구분지어진 테이블이다 DV
'//모든데이터를 컨트롤에표시한후 출력물의 구분(일반용/기입등)을 짓는다.
'Dim 선로명패턴검사 As Integer = 0
'Dim 장척패턴검삭 As Integer = 0
Me.관리구 = GetSpread(Me.Dv, index, "관리구")
Me.전산번호 = GetSpread(Me.Dv, index, "전산번호")
'Me.HA단자명 = GetSpread(me.dv,index, "HA단자명")
'Me.HASS = GetSpread(me.dv,index, "HASS")
'Me.HADL = GetSpread(me.dv,index, "HADL")
'Me.HA구간 = GetSpread(me.dv,index, "HA구간")
'Me.HB단자명 = GetSpread(me.dv,index, "HB단자명")
'Me.HBSS = GetSpread(me.dv,index, "HBSS")
'Me.HBDL = GetSpread(me.dv,index, "HBDL")
'Me.HB구간 = GetSpread(me.dv,index, "HB구간")
Me.S0번호1 = GetSpread(Me.Dv, index, "S0번호1")
Me.S0번호2 = GetSpread(Me.Dv, index, "S0번호2")
Me.S0번호3 = GetSpread(Me.Dv, index, "S0번호3")
Me.S0번호4 = GetSpread(Me.Dv, index, "S0번호4")
Me.S0SW명 = GetSpread(Me.Dv, index, "S0SW명")
Me.S0수용가 = GetSpread(Me.Dv, index, "S0수용가")
Me.S0SS명 = GetSpread(Me.Dv, index, "S0SS")
Me.S0DL명 = GetSpread(Me.Dv, index, "S0DL")
Me.S1번호1 = GetSpread(Me.Dv, index, "S1번호1")
Me.S1번호2 = GetSpread(Me.Dv, index, "S1번호2")
Me.S1번호3 = GetSpread(Me.Dv, index, "S1번호3")
Me.S1번호4 = GetSpread(Me.Dv, index, "S1번호4")
Me.S1SW명 = GetSpread(Me.Dv, index, "S1SW명")
Me.S1위치 = GetSpread(Me.Dv, index, "S1위치")
Me.S1SS명 = GetSpread(Me.Dv, index, "S1SS")
Me.S1DL명 = GetSpread(Me.Dv, index, "S1DL")
Me.S2번호1 = GetSpread(Me.Dv, index, "S2번호1")
Me.S2번호2 = GetSpread(Me.Dv, index, "S2번호2")
Me.S2번호3 = GetSpread(Me.Dv, index, "S2번호3")
Me.S2번호4 = GetSpread(Me.Dv, index, "S2번호4")
Me.S2SW명 = GetSpread(Me.Dv, index, "S2SW명")
Me.S2위치 = GetSpread(Me.Dv, index, "S2위치")
Me.S2SS명 = GetSpread(Me.Dv, index, "S2SS")
Me.S2DL명 = GetSpread(Me.Dv, index, "S2DL")
Me.S3번호1 = GetSpread(Me.Dv, index, "S3번호1")
Me.S3번호2 = GetSpread(Me.Dv, index, "S3번호2")
Me.S3번호3 = GetSpread(Me.Dv, index, "S3번호3")
Me.S3번호4 = GetSpread(Me.Dv, index, "S3번호4")
Me.S3SW명 = GetSpread(Me.Dv, index, "S3SW명")
Me.S3위치 = GetSpread(Me.Dv, index, "S3위치")
Me.S3SS명 = GetSpread(Me.Dv, index, "S3SS")
Me.S3DL명 = GetSpread(Me.Dv, index, "S3DL")
Me.S4번호1 = GetSpread(Me.Dv, index, "S4번호1")
Me.S4번호2 = GetSpread(Me.Dv, index, "S4번호2")
Me.S4번호3 = GetSpread(Me.Dv, index, "S4번호3")
Me.S4번호4 = GetSpread(Me.Dv, index, "S4번호4")
Me.S4SW명 = GetSpread(Me.Dv, index, "S4SW명")
Me.S4위치 = GetSpread(Me.Dv, index, "S4위치")
Me.S4SS명 = GetSpread(Me.Dv, index, "S4SS")
Me.S4DL명 = GetSpread(Me.Dv, index, "S4DL")
Me.시공년월 = GetSpread(Me.Dv, index, "시공년월")
Me.시공회사 = GetSpread(Me.Dv, index, "시공회사")
Me.공사번호 = GetSpread(Me.Dv, index, "공사번호")
Me.감독자 = GetSpread(Me.Dv, index, "감독자")
Me.비고1 = GetSpread(Me.Dv, index, "비고1")
Me.비고2 = GetSpread(Me.Dv, index, "비고2")
Me.비고3 = GetSpread(Me.Dv, index, "비고3")
Me.비고4 = GetSpread(Me.Dv, index, "비고4")
Me.비고5 = GetSpread(Me.Dv, index, "비고5")
Me.비고6 = GetSpread(Me.Dv, index, "비고6")
WLog2(Auto_Log, "데이터뷰의 데이터를 변수로 가져오기 완료()", "\지중(케이블)순차로그.txt")
Me.Text = "지중(케이블) 출력작업(" & 관리구 & 전산번호 & ")"
WLog2(Auto_Log, "PASE구문을 실행합니다.()", "\지중(케이블)순차로그.txt")
'============ 여기는 따로 해석이 없는곳이다 ==========================================================
Me.PARSE(Me.비고1, Me.S비고1)
Me.PARSE(Me.비고2, Me.S비고2)
Me.PARSE(Me.비고3, Me.S비고3)
Me.PARSE(Me.비고4, Me.S비고4)
Me.PARSE(Me.비고5, Me.S비고5)
Me.PARSE(Me.비고6, Me.S비고6)
'=====================고정문자======================================================================
Me.PARSE("공사번호", Me.st공사번호)
Me.PARSE("공사번호:", Me.st공사번호2)
Me.PARSE("설치년월", Me.st설치년월)
Me.PARSE("설치년월:", Me.st설치년월2)
Me.PARSE("시공업체", Me.st시공업체)
Me.PARSE("시공업체:", Me.st시공업체2)
Me.PARSE("감독자", Me.st감독자)
Me.PARSE("감독자:", Me.st감독자2)
Me.PARSE("S/S", Me.stSS1)
Me.PARSE("S/S", Me.stss2)
Me.PARSE("S/S", Me.stSS3)
Me.PARSE("S/S", Me.stss4)
Me.PARSE("S/S", Me.stSS5)
Me.PARSE("D/L", Me.stdl1)
Me.PARSE("D/L", Me.stdl2)
Me.PARSE("D/L", Me.stdl3)
Me.PARSE("D/L", Me.stdl4)
Me.PARSE("D/L", Me.stdl5)
Me.PARSE("전산화번호:", Me.st전산번호)
'====================================================================================================
WLog2(Auto_Log, "패턴이있는 PASE 구문을 실행합니다.()", "\지중(케이블)순차로그.txt")
If Me.PARSE(시공년월, Me.S시공년월) Then Me.PARSE_PATTERN(시공년월, Me.S시공년월)
If Me.PARSE(시공회사, Me.S시공회사) Then Me.PARSE_PATTERN(시공회사, Me.S시공회사)
If Me.PARSE(시공년월, Me.S공사번호) Then Me.PARSE_PATTERN(공사번호, Me.S공사번호)
If Me.PARSE(시공년월, Me.S감독자) Then Me.PARSE_PATTERN(감독자, Me.S감독자)
If Me.PARSE(관리구, Me.S관리구) Then Me.PARSE_PATTERN(관리구, Me.S관리구)
If Me.PARSE(전산번호, Me.S전산번호) Then Me.PARSE_PATTERN(전산번호, Me.S전산번호)
'If Me.PARSE(HA단자명, Me.고압단자명) Then Me.PARSE_PATTERN(HA단자명, Me.고압단자명)
'If Me.PARSE(HASS, Me.SHASS) Then Me.PARSE_PATTERN(HASS, Me.SHASS)
'If Me.PARSE(HADL, Me.SHADL) Then Me.PARSE_PATTERN(HADL, Me.SHADL)
'If Me.PARSE(HA구간, Me.SHA구간) Then Me.PARSE_PATTERN(HA구간, Me.SHA구간)
'If Me.PARSE(HB단자명, Me.SHB단자명) Then Me.PARSE_PATTERN(HB단자명, Me.SHB단자명)
'If Me.PARSE(HBSS, Me.SHBSS) Then Me.PARSE_PATTERN(HBSS, Me.SHBSS)
'If Me.PARSE(HBDL, Me.SHBDL) Then Me.PARSE_PATTERN(HBDL, Me.SHBDL)
'If Me.PARSE(HB구간, Me.SHB구간) Then Me.PARSE_PATTERN(HB구간, Me.SHB구간)
If Me.PARSE(S0번호1, Me.SS0번호1) Then Me.PARSE_PATTERN(S0번호1, Me.SS0번호1)
If Me.PARSE(S0번호2, Me.SS0번호2) Then Me.PARSE_PATTERN(S0번호2, Me.SS0번호2)
If Me.PARSE(S0번호3, Me.SS0번호3) Then Me.PARSE_PATTERN(S0번호3, Me.SS0번호3)
If Me.PARSE(S0번호4, Me.SS0번호4) Then Me.PARSE_PATTERN(S0번호4, Me.SS0번호4)
If Me.PARSE(S0SW명, Me.SS0SW명) Then Me.PARSE_PATTERN(S0SW명, Me.SS0SW명)
If Me.PARSE(S0수용가, Me.SS0수용가) Then Me.PARSE_PATTERN(S0수용가, Me.SS0수용가)
If Me.PARSE(Me.S0SS명, Me.SS0SS) Then Me.PARSE_PATTERN(S0SS명, Me.SS0SS)
If Me.PARSE(Me.S0DL명, Me.SS0DL) Then Me.PARSE_PATTERN(S0DL명, Me.SS0DL)
If Me.PARSE(S1번호1, Me.SS1번호1) Then Me.PARSE_PATTERN(S1번호1, Me.SS1번호1)
If Me.PARSE(S1번호2, Me.SS1번호2) Then Me.PARSE_PATTERN(S1번호2, Me.SS1번호2)
If Me.PARSE(S1번호3, Me.SS1번호3) Then Me.PARSE_PATTERN(S1번호3, Me.SS1번호3)
If Me.PARSE(S1번호4, Me.SS1번호4) Then Me.PARSE_PATTERN(S1번호4, Me.SS1번호4)
If Me.PARSE(S1SW명, Me.SS1SW명) Then Me.PARSE_PATTERN(S1SW명, Me.SS1SW명)
If Me.PARSE(S1위치, Me.SS1위치) Then Me.PARSE_PATTERN(S1위치, Me.SS1위치)
If Me.PARSE(Me.S1SS명, Me.SS1SS) Then Me.PARSE_PATTERN(S1SS명, Me.SS1SS)
If Me.PARSE(Me.S1DL명, Me.SS1DL) Then Me.PARSE_PATTERN(S1DL명, Me.SS1DL)
If Me.PARSE(S2번호1, Me.SS2번호1) Then Me.PARSE_PATTERN(S2번호1, Me.SS2번호1)
If Me.PARSE(S2번호2, Me.SS2번호2) Then Me.PARSE_PATTERN(S2번호2, Me.SS2번호2)
If Me.PARSE(S2번호3, Me.SS2번호3) Then Me.PARSE_PATTERN(S2번호3, Me.SS2번호3)
If Me.PARSE(S2번호4, Me.SS2번호4) Then Me.PARSE_PATTERN(S2번호4, Me.SS2번호4)
If Me.PARSE(S2SW명, Me.SS2SW명) Then Me.PARSE_PATTERN(S2SW명, Me.SS2SW명)
If Me.PARSE(S2위치, Me.SS2위치) Then Me.PARSE_PATTERN(S2위치, Me.SS2위치)
If Me.PARSE(Me.S2SS명, Me.SS2SS) Then Me.PARSE_PATTERN(S2SS명, Me.SS2SS)
If Me.PARSE(Me.S2DL명, Me.SS2DL) Then Me.PARSE_PATTERN(S2DL명, Me.SS2DL)
If Me.PARSE(S3번호1, Me.SS3번호1) Then Me.PARSE_PATTERN(S3번호1, Me.SS3번호1)
If Me.PARSE(S3번호2, Me.SS3번호2) Then Me.PARSE_PATTERN(S3번호2, Me.SS3번호2)
If Me.PARSE(S3번호3, Me.SS3번호3) Then Me.PARSE_PATTERN(S3번호3, Me.SS3번호3)
If Me.PARSE(S3번호4, Me.SS3번호4) Then Me.PARSE_PATTERN(S3번호4, Me.SS3번호4)
If Me.PARSE(S3SW명, Me.SS3SW명) Then Me.PARSE_PATTERN(S3SW명, Me.SS3SW명)
If Me.PARSE(S3위치, Me.SS3위치) Then Me.PARSE_PATTERN(S3위치, Me.SS3위치)
If Me.PARSE(Me.S3SS명, Me.SS3SS) Then Me.PARSE_PATTERN(S3SS명, Me.SS3SS)
If Me.PARSE(Me.S3DL명, Me.SS3DL) Then Me.PARSE_PATTERN(S3DL명, Me.SS3DL)
If Me.PARSE(S4번호1, Me.SS4번호1) Then Me.PARSE_PATTERN(S4번호1, Me.SS4번호1)
If Me.PARSE(S4번호2, Me.SS4번호2) Then Me.PARSE_PATTERN(S4번호2, Me.SS4번호2)
If Me.PARSE(S4번호3, Me.SS4번호3) Then Me.PARSE_PATTERN(S4번호3, Me.SS4번호3)
If Me.PARSE(S4번호4, Me.SS4번호4) Then Me.PARSE_PATTERN(S4번호4, Me.SS4번호4)
If Me.PARSE(S4SW명, Me.SS4SW명) Then Me.PARSE_PATTERN(S4SW명, Me.SS4SW명)
If Me.PARSE(S4위치, Me.SS4위치) Then Me.PARSE_PATTERN(S4위치, Me.SS4위치)
If Me.PARSE(Me.S4SS명, Me.SS4SS) Then Me.PARSE_PATTERN(S4SS명, Me.SS4SS)
If Me.PARSE(Me.S4DL명, Me.SS4DL) Then Me.PARSE_PATTERN(S4DL명, Me.SS4DL)
WLog2(Auto_Log, "구관리전산,일련번호,관리전산표시여부를 pase 합니다.()", "\지중(케이블)순차로그.txt")
'========================= 기타 =================================================
'//이러면 표시해야한다.
If Me.cb_seq.Checked Then
Me.S번호(0).MyText = GetSpread(Me.Dv, index, "번호") 'index + 1
Me.S번호(0).Visible = True
Else
Me.S번호(0).Visible = False
End If
'//한줄짜리 넣으려면 아래와같이 넎는다.
'If 관리구 <> "" AndAlso 전산번호 <> "" AndAlso Me.cb_kwanglijungsan.Checked Then
' Me.S관리구전주번호(0).MyText = 관리구 & "-" & 전산번호
' Me.S관리구전주번호(0).Visible = True
'Else
' Me.S관리구전주번호(0).Visible = False
'End If
WLog2(Auto_Log, "사용자문자의 표시여부를 결정합니다.()", "\지중(케이블)순차로그.txt")
'사용자문자의 표시여부 u a b d e
'휴 끝났다.......................................................
WLog2(Auto_Log, "Pewview 윈도우를 실행합니다.()", "\지중(케이블)순차로그.txt")
Me.preview_window()
' If Me.chb_preview.Checked AndAlso previewWindow Then Me.preview_window()
End Sub
Public Function ChkNumPattern(ByVal index As Integer) As Int16
WLog2(Auto_Log, "번호패턴을 체크합니다. int16을 반환합니다.()", "\지중(케이블)순차로그.txt")
If Dv.Count <= 0 Or index < 0 OrElse index > Dv.Count Then
'MsgBox("데이터가 없거나 잘못된 인덱스 입니다(" & index & "/" & Me.CustFP1.ActiveSheet.RowCount & ")", MsgBoxStyle.Critical, "확인")
Return -1 '//잘못된 인덱스는 리턴
End If
Dim 검사번호패턴검사 As Integer = 0
Dim 검사번호 As String
검사번호 = GetSpread(Me.Dv, index, "번호1") & GetSpread(Me.Dv, index, "번호2") & GetSpread(Me.Dv, index, "번호3") & GetSpread(Me.Dv, index, "번호4") & GetSpread(Me.Dv, index, "번호5")
If 검사번호.Trim = "" Then Return -1 '//검사번호자체에 문제가잇을시 에 리턴
Dim Wlen As Short = 검사번호.Length : If Wlen <= 0 Then Return -1 '//없는 글귀가 왓을때 턴해버린다.
Dim SRC() As Char = 검사번호.ToCharArray
Dim Log As String = "\Parse_검사번호패턴.txt"
Dim SepPos As Short = 검사번호.IndexOf(";")
Dim retval As Integer = 0 ''0은 정상 1은 길이패턴없음 2는 3은 길이+문자없음
'//검사번호는 길이패턴을 하지않고 문자패턴만 한다.
Dim pname As String
Dim Arinini As New MyINI2(Common.StyleList(cmb_style.SelectedIndex).File)
Dim PATTERN As String = PATTERN_ENC(검사번호)
'//먼저문자가있는지 확인한다.
pname = "JJNUMPATTERNII" & PATTERN
Dim Dr() As DataRow
Dr = dtpattern.Select("NAME = '" & pname & "DESC'")
WLog2(Auto_Log, "길이패턴의 존재여부 = " & Dr.GetUpperBound(0) & ":" & pname, "\지중(케이블)순차로그.txt")
If Dr.GetUpperBound(0) <> -1 Then '//있다.
retval += 2
'WLog2(Auto_Log, "관리구5번 문자를 찾았습니다 (" & pname & "DESC" & ")", Log)
End If
'If Arinini.Read(pname, "DESC") = vbNullString Then retval += 2 '//패턴이 없으므로 바로 넘긴다.
pname = "JJNUMPATTERN" & Wlen
Dr = dtpattern.Select("NAME = '" & pname & "DESC'")
WLog2(Auto_Log, "문자패턴의 존재여부 = " & Dr.GetUpperBound(0) & ";" & pname, "\지중(케이블)순차로그.txt")
If Dr.GetUpperBound(0) <> -1 Then '//있다.
retval += 1
'WLog2(Auto_Log, "관리구5번 문자를 찾았습니다 (" & pname & "DESC" & ")", Log)
End If
Return retval '// 0이 리턴될것이다. 패턴이 모두 정상이란 뜻이다
End Function
Public Sub CLEAR_ITEM(ByVal labels() As MyControlOLEDBv2.MyLabel)
WLog2(Auto_Log, "Clear_item div=", "\지중(케이블)순차로그.txt")
For i As Short = 0 To labels.GetUpperBound(0)
labels(i).MyText = ""
labels(i).Visible = False
Next
End Sub
Public Sub GetStyleList()
AddLog(Auto_Log, "GetStyleList진입()", "\지중(케이블라벨)순차로그.txt")
'//스타일명을 가져와서 콤보박스에 표시합니다.
'//style 폴더아래의 ini 파일전체를 스타일 이라한다.
'//파일을 읽어서 메모리에 저장한다.
' Dim Arinini As MyINI
Dim CurIdx As Integer = 0
If StyleDir.Exists = False Then StyleDir.Create()
Dim StyleCnt As Short = StyleDir.GetFiles("*.ini").GetUpperBound(0)
'
'ReDim StyleList(StyleCnt)
ReDim Common.PDS(StyleCnt) '//패턴데이터셋의 갯수를 저장한다
Dim Section, Value As New ArrayList
Dim SectionIdx As Integer = 0
AddLog(Auto_Log, "GetStyleList(파일에서 스타일목을 가져온다)", "\지중(케이블라벨)순차로그.txt")
'//스타일파일명을 테이블에 임시저장한다(일괄로 불러오기위함이다.)
Dim Dt As New System.Data.DataTable : Dt.Columns.Add("파일명")
For Each FI As IO.FileInfo In StyleDir.GetFiles("*.ini")
Dt.Rows.Add(FI.FullName)
Next
For Each Dr As DataRow In Dt.Select("", "파일명 asc")
Dim FileName As String = Dr("파일명")
AddLog(Auto_Log, "파일명=(" & FileName & ") 의 스타일을 가져옵니다 메모리로", "\지중순차로그.txt")
'//XML테이블을 새로생성
Common.PDS(CurIdx) = New PatternDS
GetAllsection(FileName, CurIdx)
Me.cmb_style.Items.Add(Common.PDS(CurIdx).TStyle.Rows(0)("DESC").ToString)
CurIdx += 1
Next
End Sub
Private Sub 데이터테이블갱신()
WLog2(Auto_Log, "데이터테이블 갱신()", "\지중(케이블)순차로그.txt")
GetAllsection(DrStyle.FILE, Me.cmb_style.SelectedIndex)
DrStyle = Common.PDS(Me.cmb_style.SelectedIndex).TStyle.Rows(0)
DtPattern = Common.PDS(Me.cmb_style.SelectedIndex).TPattern
End Sub
Private Function Prepare_Print() As Boolean '//범위내의 페이지번호와 일치하는 번호를 찾아서 배열에 할당한다.
WLog2(Auto_Log, "Func(PrePare_Print) 인쇄번호 할당 준비", "\Alllog.txt")
Dim Number As Integer = 0
Dim FindNum As Boolean = False
Me.printindex = 0 '//배열의 첫번으로 출력을 준비한다.
'Me.PrintArray = Nothing '//출력번호 배열을 저장할 것이다.\
ReDim PrintArray(0)
PrintArray(0) = 1
'log = False
'AddLog("==============출력준비중==============", True)
Me.pDoc.DefaultPageSettings.Margins.Left = 0 'Me.tb_marginx.Text '//좌,우 여백 설정
Me.pDoc.DefaultPageSettings.Margins.Top = 0 'Me.tb_marginy.Text
Me.pDoc.DefaultPageSettings.Landscape = IIf(Me.cmb_landscape.SelectedIndex = 0, False, True) '//가로,세로 출력결정
'//프린터명이 지정되어있다면 해당 프린터로설정,없으면 기본프린터
If Me.combobox5.Text <> "" Then Me.pDoc.PrinterSettings.PrinterName = Me.combobox5.Text
'//범위인데 값이 비어있으면 현재출력으로
If Me.RadioButton3.Checked AndAlso Me.tb_printrange.Text.Trim = "" Then Me.RadioButton2.Checked = True
If Me.rad_repeat.Checked Then
If IsNumeric(Me.tb_printrange.Text) = False Then
MsgBox("출력장수에 숫자만 입력하세요", MsgBoxStyle.Critical, "확인")
Return False
End If
ReDim PrintArray(Val(Me.tb_printrange.Text) - 1)
For i As Integer = 0 To Val(Me.tb_printrange.Text) - 1
PrintArray(i) = Me.BindingNavigatorPositionItem.Text - 1
Next
End If
If Me.RadioButton1.Checked Then '//전체출력이므로 배열에 모든것을 리턴한다 : 모든데이터의 레코드 인덱스를 저장한다.
'MsgBox("rad1")
ReDim Me.PrintArray(Me.Dv.Count - 1)
For i As Integer = 0 To Dv.Count - 1
Me.PrintArray(i) = i
Next
End If
If Me.RadioButton2.Checked Then '//현재페이지 : 현재보고있다는 페에지의 레코드인덱스만 저장한다.
'MsgBox("Rad2" & Me.BindingNavigatorPositionItem.Text - 1)
ReDim Me.PrintArray(0)
Me.PrintArray(0) = Me.BindingNavigatorPositionItem.Text - 1 '/현재카운트보다 1작다 배열은 0부터 시작하기떄문에
'Me.printindex = -1
End If
'//2007-12-21일 변경시작
If Me.RadioButton3.Checked Then '//범위지정 : 지정된범위내의 번호값을 가지고 해당 인덱스를 찾아서 배열에 할당한다.
'Dim buff() As String = Me.tb_printrange.Text.Split("/")
'Dim curpos As Integer = 0
'MsgBox("rad3")
Dim buff As String = Me.tb_printrange.Text
ReDim Me.PrintArray(0) : Me.PrintArray(0) = -1
'//먼저 -가 있나없나 판단해서 한페이지용인지 범위용인지 구분한다.
If buff.IndexOf("-") >= 0 Then '//범위이다.
Dim SubBuff() As String = buff.Split("-")
Dim Sttnum As Integer = CInt(SubBuff(0)) '//시작
Dim endnum As Integer = CInt(SubBuff(1)) '//종료값
For SI As Integer = 0 To endnum - Sttnum '//범위갯수만큼 돈다
FindNum = False
Number = CInt(Sttnum + SI) '//페이지만 적엇을 것이므로
For ni As Integer = 0 To Dv.Count - 1 '//현재뷰의 모든데이터를 가지고 검색한다 좌->우 순차검색
If Number = Dv(ni).Row("번호") Then
If PrintArray(0) = -1 Then '//처음데이터이므로
Me.PrintArray(0) = ni
Else '//처음이아니므로 배열을 증가시키고 기입한다.
ReDim Preserve PrintArray(PrintArray.GetUpperBound(0) + 1) '//배열1증가
Me.PrintArray(PrintArray.GetUpperBound(0)) = ni
End If
FindNum = True
Exit For
End If
Next
Next
Else '//페이지번호만 적었을때다
If IsNumeric(buff) Then
Number = CInt(buff) '//페이지만 적엇을 것이므로
For ni As Integer = 0 To Dv.Count - 1 '//현재뷰의 모든데이터를 가지고 검색한다 좌->우 순차검색
If Number = Dv(ni).Row("번호") Then
PrintArray(0) = ni
Exit For
End If
Next
Else
MsgBox("범위(-)를 제외하고 숫자만 입력하세요", MsgBoxStyle.Critical, "입력오류")
End If
End If
End If
If PrintArray(0) = -1 Then '//배열에 아무것도 없다면
Return False
Else
Return True
End If
End Function
Private Sub Print_Preview()
WLog2(Auto_Log, "print_preview 미리보기 버튼을 눌렀을때다.()", "\지중(케이블)순차로그.txt")
Me.PrintMode = True
If Not Prepare_Print() Then
MsgBox("인쇄할 목록이 없습니다", MsgBoxStyle.Critical, "확인")
Return
End If
Dim Preview As New PrintPreviewDialog()
Try
Preview.Document = pDoc
Preview.ShowDialog()
Catch EX As Exception
MsgBox(EX.Message)
End Try
End Sub
Private Sub pDoc_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles pDoc.PrintPage
AddLog(Admin, "proc_printpage 프린트패이지를 작성한다 중요하다.()", "\Alllog.txt")
Dim fmt As New StringFormat(StringFormatFlags.LineLimit)
Dim MyFont As Font
Dim NewFontSize As Int16 = 10
Dim dummy As Boolean = False '//이값이 true 이면 출력시 변위를 지정해서 출력한다.
Dim C As MyControlOLEDBv2.MyLabel
Dim NewLeft, NewTop As Integer
'페이지 구분을 이해하고 몇개를 찍을지 결정한다.
'Debug.Print("프린터인덱스=" & Me.printindex)
'Debug.Print("프린터배열=" & Me.PrintArray.GetUpperBound(0))
If Me.printindex <> -1 Then
If Me.rad_repeat.Checked = False Then Me.GeTviewData(Me.PrintArray(Me.printindex), False) '//페이지를 갱신하고 출력을 시작한다.
Else
MsgBox("프린트 인덱스가 없습니다", MsgBoxStyle.Critical, "확인")
End If
e.Graphics.ScaleTransform(Me.tb_scalex.Text, Me.tb_scaley.Text)
If Me.Chk_BgImageprint.Checked AndAlso Me.chk_DisplayBG.Checked AndAlso Not Me.bakimg.BackgroundImage Is Nothing Then
If Me.PrintMode = False Then '//미리보기일때 인쇄마진을 넣지않는다.
e.Graphics.DrawImage(Me.bakimg.BackgroundImage, CInt(Me.tb_bakx.Text), CInt(Me.tb_baky.Text), CInt(Me.tb_bakw.Text), CInt(Me.tb_bakh.Text)) '//배경그림
Else
e.Graphics.DrawImage(Me.bakimg.BackgroundImage, CInt(Me.tb_bakx.Text) + CInt(Me.tb_marginx.Text), CInt(Me.tb_baky.Text) + CInt(Me.tb_marginy.Text), CInt(Me.tb_bakw.Text), CInt(Me.tb_bakh.Text)) '//배경그림
End If
End If
If Me.chk_draw.Checked Then
'//라인을 그린다.
For Each Rect As S_Line In Draw_Line
Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth)
If Me.PrintMode Then
e.Graphics.DrawLine(Pen, Rect.X + CInt(Me.tb_marginx.Text), Rect.Y + CInt(Me.tb_marginy.Text), Rect.X2 + CInt(Me.tb_marginx.Text), Rect.Y2 + CInt(Me.tb_marginy.Text))
Else
e.Graphics.DrawLine(Pen, Rect.X, Rect.Y, Rect.X2, Rect.Y2)
End If
Next
'//박스를 그린다.
For Each Rect As S_Box In Draw_Box
Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth)
If Me.PrintMode Then
e.Graphics.DrawRectangle(Pen, Rect.X + CInt(Me.tb_marginx.Text), Rect.Y + CInt(Me.tb_marginy.Text), Rect.Width, Rect.Height)
Else
e.Graphics.DrawRectangle(Pen, Rect.X, Rect.Y, Rect.Width, Rect.Height)
End If
Next
'//원을 그린다.
For Each Rect As S_Circle In Draw_Circle
Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth)
If Me.PrintMode Then
e.Graphics.DrawEllipse(Pen, Rect.X + CInt(Me.tb_marginx.Text), Rect.Y + CInt(Me.tb_marginy.Text), Rect.Width, Rect.Height)
Else
e.Graphics.DrawEllipse(Pen, Rect.X, Rect.Y, Rect.Width, Rect.Height)
End If
Next
If 관리구 <> "" Then
Try
'//QR코드를 그린다.
For Each Rect As S_QRCode In Draw_QRcode
'Dim scale As Int16
Dim version As Int16
Dim image As Image
Dim data As String
Dim errorCorrect As String
Dim qrCodeEncoder1 As New QRCodeEncoder()
Dim encoding As String
encoding = cboEncoding.Text
If encoding = "3" Then
qrCodeEncoder1.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.BYTE
ElseIf encoding = "1" Then
qrCodeEncoder1.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC
ElseIf encoding = "2" Then
qrCodeEncoder1.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.NUMERIC
Try
version = Convert.ToInt16(cboVersion.Text)
qrCodeEncoder1.QRCodeVersion = version
Catch ex As Exception
MessageBox.Show("Invaild Version!")
End Try
End If
errorCorrect = cboCorrectionLevel.Text
If errorCorrect = "1" Then
qrCodeEncoder1.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.L
ElseIf errorCorrect = "2" Then
qrCodeEncoder1.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.M
ElseIf errorCorrect = "3" Then
qrCodeEncoder1.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.Q
ElseIf errorCorrect = "4" Then
qrCodeEncoder1.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.H
End If
data = 관리구 'data설정
If lbQrBg.BackColor <> Drawing.Color.White Then qrCodeEncoder1.QRCodeBackgroundColor = lbQrBg.BackColor
If lbQrFG.BackColor <> Drawing.Color.Black Then qrCodeEncoder1.QRCodeForegroundColor = lbQrFG.BackColor
image = qrCodeEncoder1.Encode(data, e.Graphics.DpiX, e.Graphics.DpiY)
If Me.PrintMode Then
e.Graphics.DrawImage(image, Rect.X + CInt(Me.tb_marginx.Text), Rect.Y + CInt(Me.tb_marginy.Text), Rect.Width, Rect.Height)
Else
e.Graphics.DrawImage(image, Rect.X, Rect.Y, Rect.Width, Rect.Height)
End If
' If Rect.Width = 0 OrElse Rect.Height = 0 Then
' Ga.DrawImage(Image, Rect.X + MyProperty_Paper.출력여백X, Rect.Y + MyProperty_Paper.출력여백Y)
'e.Graphics.DrawImage(image, Rect.X + CInt(Me.tb_marginx.Text), Rect.Y + CInt(Me.tb_marginy.Text))
'Else
' Ga.DrawImage(Image, Rect.X + MyProperty_Paper.출력여백X, Rect.Y + MyProperty_Paper.출력여백Y, Rect.Width, Rect.Height)
'e.Graphics.DrawImage(image, Rect.X, Rect.Y, Rect.Width, Rect.Height)
'End If
Next
Catch ex As Exception
MessageBox.Show(ex.ToString())
End Try
End If
End If
'//연속페이지 오류정정
If Me.tb_pagerepeat.Text = "" Or Me.tb_pagerepeat.Text < 1 Then Me.tb_pagerepeat.Text = "1"
For pi As Short = 0 To Me.tb_pagerepeat.Text - 1 '//페이지당 연속출력할 횟수
Dummyflag: '//--2장출력일경우 이부분에서 다시 시작한다.
For i As Integer = 0 To Me.AllLabels.GetUpperBound(0)
C = Me.AllLabels(i).ctl
If C.Visible = True AndAlso C.MyText <> "" Then
For rcnt As Short = 0 To C.Repeat '//반복기능추가
'//myfont 는 글꼴의 일괄크기변경 옵션의의해서 생성됨
NewFontSize = C.MyFont.Size + Me.tb_myfontsize.Text
If NewFontSize < 0 Then NewFontSize = 0
MyFont = New Font(C.MyFont.FontFamily, NewFontSize, C.MyFont.Style)
NewLeft = C.Left + IIf(Me.PrintMode, Me.tb_marginx.Text, 0) + Me.tb_secX.Text * pi + rcnt * C.RepeatX
NewTop = C.Top + IIf(Me.PrintMode, Me.tb_marginy.Text, 0) + Me.tb_secY.Text * pi + rcnt * C.RepeatY
If C.장평 = 100 AndAlso C.장높이 = 100 Then '//장평미사용 문자열 처리
e.Graphics.DrawString(C.최종문자, MyFont, Brushes.Black, New Point(NewLeft, NewTop))
Else '//장평사용 이미지 처리
Dim NewX, Newy As Integer
Dim SrcDpix, SrcDPiY As Single
'MsgBox(Tobj.장높이)
SrcDpix = C.CreateGraphics.DpiX
SrcDPiY = C.CreateGraphics.DpiY
NewX = C.GetSize(MyFont).Width * (C.장평 / 100) * (e.Graphics.DpiX / SrcDpix)
Newy = C.GetSize(MyFont).Height * (C.장높이 / 100) * (e.Graphics.DpiY / SrcDPiY)
Dim BMP As New Bitmap(NewX, Newy, e.Graphics)
Dim G As Graphics = Graphics.FromImage(BMP)
G.ScaleTransform((C.장평 / 100), (C.장높이 / 100))
G.DrawString(C.최종문자, MyFont, Brushes.Black, 0, 0)
G.Dispose()
e.Graphics.DrawImage(BMP, New Point(NewLeft, NewTop)) ', CInt(GetSize.Width * (v장평 / 100)), GetSize.Height)
End If
Next
End If
Next
'//한데이터출력하고나서 반복페에지횟수가 있는지확인한다.
If Me.tb_pagerepeat.Text > 1 Then
' If Me.cmb_dummy.SelectedIndex <> 0 Then '//다음데이터의 출력이면 여기서 데이터를 갱신해준다.
If Me.cmb_dummy.SelectedIndex <> 0 Then '//다음장이있다.
If Me.printindex >= 0 AndAlso Me.printindex < Me.PrintArray.GetUpperBound(0) Then
'//루프가 끝낫는지 추가체크한다. 170308
If pi < Me.tb_pagerepeat.Text - 1 Then
Me.printindex += 1 '/1장넘기고
If Me.cmb_dummy.SelectedIndex <> 0 AndAlso Me.rad_repeat.Checked = False Then Me.GeTviewData(Me.PrintArray(Me.printindex), False) '//데이터 바꾸는데..화면은 갱신하지 않는다.
End If
Else '//다음장의 출력인데 데이터가없다면 루프를 더이상 돌면안된다.
Exit For
End If
End If
End If
Next '//pi 반복할거를 모두 출력했을시에
If Me.printindex >= 0 AndAlso Me.printindex < Me.PrintArray.GetUpperBound(0) Then '//다음장이있다.
If Me.tb_pagerepeat.Text < 2 Then
Me.printindex += 1 '//페이지번호를 증가
Else
Me.printindex += 1
End If
e.HasMorePages = True
Else
e.HasMorePages = False
End If
e.Graphics.Dispose()
End Sub
Private Sub Print()
If MsgBox("인쇄를 하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") = MsgBoxResult.Ok Then
WLog2(Auto_Log, "print 바로 출력을 하라는 명령이다()", "\Alllog.txt")
Me.PrintMode = True
If Me.Prepare_Print() Then
pDoc.Print()
GeTviewData(BindingSource1.Position, True) ' preview_window()
Else
MsgBox("인쇄가능한 목록이 없습니다", MsgBoxStyle.Critical, "확인")
End If
Else
NOTICE("인쇄가 취소되었습니다", Drawing.Color.Tomato, Me.lb_msg)
End If
End Sub
Private Sub con_Mmove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
WLog2(Auto_Log, "con _move 개체이동할 프로시져인데 현재 안쓴다.()", "\지중(케이블)순차로그.txt")
If My.Computer.Keyboard.CtrlKeyDown AndAlso e.Button = System.Windows.Forms.MouseButtons.Left Then
' Me.Text = CType(sender, Label).Left & "/" & e.X
CType(sender, MyControlOLEDBv2.MyLabel).Left += e.X
CType(sender, MyControlOLEDBv2.MyLabel).Top += e.Y
End If
End Sub
'''우측에 개체의 상태를 보여줍니다.
'''
Public Sub ViewProperty(ByVal sender As MyControlOLEDBv2.MyLabel)
WLog2(Auto_Log, "view properfty 개체의 상태보기()", "\지중(케이블)순차로그.txt")
If Not Me.GroupBox2.Enabled Then Me.GroupBox2.Enabled = True
Me.TB_FONTNAME.Text = sender.MyFont.Name.ToString
Me.tb_left.Text = sender.Left
Me.tb_top.Text = sender.Top
Me.tb_foncol.BackColor = sender.MyForeColor
Me.cb_visible.Checked = sender.Visible
Me.cb_bold.Checked = sender.MyFont.Bold
'Me.cb_italic.Checked = sender.MyFont.Italic
' Me.cb_uline.Checked = sender.MyFont.Underline
Me.tb_fsize.Text = sender.MyFont.Size
Me.tb_wordwidth.Text = sender.장평
Me.tb_wordheight.Text = sender.장높이
Me.tb_space.Text = sender.공백
Me.tb_rep.Text = sender.Repeat
Me.tb_repx.Text = sender.RepeatX
Me.tb_repy.Text = sender.RepeatY
Me.GroupBox2.Text = "위치/크기/글꼴(" & sender.MyText & ") W=" & sender.Width & ",H=" & sender.Height
If Not sender.Tag Is Nothing Then '//여기서 개체의 패턴적용여부를 표시합니다.
' MsgBox(sender.Tag.ToString)
Me.lb_countpattern.ForeColor = IIf(sender.Tag.ToString.IndexOf("L") >= 0, Drawing.Color.Green, Drawing.Color.Black)
Me.lb_strpattern.ForeColor = IIf(sender.Tag.ToString.IndexOf("C") >= 0, Drawing.Color.Green, Drawing.Color.Black)
'Me.CB_LPATTERN.Checked = IIf(sender.Tag.ToString.IndexOf("L") >= 0, True, False)
'Me.CB_CHARPATTERN.Checked = IIf(sender.Tag.ToString.IndexOf("C") >= 0, True, False)
Else
Me.lb_countpattern.ForeColor = Drawing.Color.Black
Me.lb_strpattern.ForeColor = Drawing.Color.Black
End If
End Sub
Private Sub ViewBackImage()
WLog2(Auto_Log, "viewBackImage 배경이미지를 표시합니다.()", "\정액등순차로그.txt")
Dim Picimg As String
If Me.tb_picfile.Text.IndexOf(":") > -1 Then '//드라이브명이 있으면 그대로쓰고 아니면 붙여서쓴다.
Picimg = Me.tb_picfile.Text
Else
Picimg = My.Application.Info.DirectoryPath & "\image\" & Me.tb_picfile.Text
End If
If Not System.IO.File.Exists(Picimg) Then
Me.chk_DisplayBG.Checked = False
ElseIf Me.chk_DisplayBG.Checked Then
Me.PictureBox1.BackgroundImage = Image.FromFile(Picimg)
Me.bakimg.BackgroundImage = Image.FromFile(Picimg)
End If
End Sub
Private Sub CheckBox4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chk_DisplayBG.CheckedChanged
WLog2(Auto_Log, "배경보기 체크박스를 클릭했다.)", "\지중(케이블)순차로그.txt")
'Me.PictureBox1.Visible = IIf(CType(sender, CheckBox).Checked, True, False)
If CType(sender, System.Windows.Forms.CheckBox).Checked Then
Me.ViewBackImage()
Else
Me.PictureBox1.BackgroundImage = Nothing
End If
End Sub
Private Sub Label11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label11.Click
Dim A As New OpenFileDialog
WLog2(Auto_Log, "파일찾기 버튼이 클릭됨", "\지중(케이블)순차로그.txt")
If System.IO.File.Exists(Me.tb_picfile.Text) Then
A.FileName = Me.tb_picfile.Text
Else
A.FileName = My.Application.Info.DirectoryPath & "\image\normal.jpg"
End If
If A.ShowDialog() <> System.Windows.Forms.DialogResult.OK Then Return
Me.tb_picfile.Text = A.FileName
Me.PictureBox1.BackgroundImage = Image.FromFile(Me.tb_picfile.Text)
Me.chk_DisplayBG.Checked = True
End Sub
Public Sub CtrPos(ByVal vertical As Boolean, ByVal offset As Short)
WLog2(Auto_Log, "ctrpos (선택된 개체들의 위치값을 변경합니다)", "\지중(케이블)순차로그.txt")
If SelCon Is Nothing OrElse SelCon.Count < 1 Then Exit Sub
For Each sender As Control In SelCon
If vertical Then '//좌우측
If My.Computer.Keyboard.CtrlKeyDown Then
If offset < 0 Then
sender.Top -= 10
Else
sender.Top += 10
End If
Else
sender.Top += offset
End If
Else '//상하측
If My.Computer.Keyboard.CtrlKeyDown Then
If offset < 0 Then
sender.Left -= 10
Else
sender.Left += 10
End If
Else
sender.Left += offset
End If
End If
Next
WLog2(Auto_Log, "ctrpos =[ preview 호출합니다]", "\지중(케이블)순차로그.txt")
Me.preview_window()
'Me.ViewProperty(sender)
End Sub
Private Sub ShowMsg(ByVal Message As String)
WLog2(Auto_Log, "showmsg 메세지를 보여줍니다 =" & Message, "\지중(케이블)순차로그.txt")
Me.lb_msg.Text = "" & Message & Space(1) & TimeOfDay.ToString
End Sub
Public Sub SetFont() '//체크박스 상태에따라서 폰트를 변경합니다.
WLog2(Auto_Log, "set font 체크박스 상태에 따라서 폰트를 변경합니다.", "\지중(케이블)순차로그.txt")
Dim B As System.Drawing.FontStyle
If Me.cb_bold.Checked = True Then B = FontStyle.Bold
Dim Tobj As MyControlOLEDBv2.MyLabel
For Each A As Control In SelCon
Tobj = CType(A, MyControlOLEDBv2.MyLabel)
Tobj.MyFont = New Font(Tobj.MyFont, B)
Next
WLog2(Auto_Log, "setfont = preview 호출합니다.", "\지중(케이블)순차로그.txt")
Me.preview_window()
End Sub
Private Sub cmb_style_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles cmb_style.KeyUp
WLog2(Auto_Log, "스타일콤보박스에서 keyip 이 감지되었으나 핸들을 true 로 해버린다.", "\지중(케이블)순차로그.txt")
e.Handled = True
End Sub
Private Sub cmb_style_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb_style.SelectedIndexChanged
'//여기서 데이터를 추려내고(필터를 가져온다.)
'//해당 스타일을 불러온다
WLog2(Auto_Log, "스타일 인덱스가 변경되었다.", "\지중(케이블)순차로그.txt")
If Me.cmb_style.SelectedIndex < 0 Then Me.cmb_style.SelectedIndex = 0
'//기본변수설정 170219
DrStyle = Common.PDS(Me.cmb_style.SelectedIndex).TStyle.Rows(0)
DtPattern = Common.PDS(Me.cmb_style.SelectedIndex).TPattern
Dim DataFilter As String = drstyle.Filter
If DataFilter.Trim = "" Then
DataFilter = "출력 = true" '//인쇄필드는 지선주 구분용으로 재사용한다.
Else
DataFilter &= " AND 출력 = true" '//지선주는 인쇄가 True 값이기때문에 해당 값을 제외한다
End If
Me.BindingSource1.Sort = ""
Me.BindingSource1.DataSource = Nothing
Dv = New DataView(srcTable, DataFilter, "정렬번호,번호", DataViewRowState.CurrentRows)
'Dv = New DataView(srcTable, "len(DL명) > 0", "", DataViewRowState.CurrentRows)
Me.SaveReadLayOut(True)
Me.SaveDrawData(True)
If Dv.Count <= 0 Then '//데이터가없다면
MsgBox(Me.cmb_style.Text & "에 해당하는 데이터가존재하지 않습니다" & vbCrLf & vbCrLf & "다른 스타일을 선택하세요", MsgBoxStyle.Information, "확인")
Me.PictureBox1.Refresh()
Else
WLog2(Auto_Log, "선택된 스타일에 데이터가있다=" & Dv.Count, "\지중(케이블)순차로그.txt")
Me.textbox2.Text = Dv.Count - 1 '//패턴검사시 종료카운터이다...
Me.VScrollBar1.Minimum = 0
Me.VScrollBar1.Maximum = Dv.Count - 1
'MsgBox("스크롤 수=" & Me.VScrollBar1.Maximum)
Me.LOAD_STYLE() '//스타일불러오기(여기서 모든컨트롤의 기본 위치와 글꼴이 결정된다)
If Me.FirstIdx = -1 Then
For i As Integer = 0 To Dv.Count - 1 '//맨첨보여줄놈을 찾는다. DV와 원래 인덱스값이 다르기때문에 찾아야한다.
If Dv(i)("번호") = Srcnum Then
FirstIdx = i
Exit For
End If
Next
End If
If FirstIdx = -1 OrElse FirstIdx > Dv.Count - 1 Then FirstIdx = 0 '//찾지못하고 나왓을경우에는 1번쨰 레코드를 보여주도록 한다.
NoView = True '//For Validate Index =0
'필터를 적용해서 뷰를 구성한다음에 해당 뷰를 데이터소스로 변경한다.
Me.SaveReadLayOut(True)
Me.SaveDrawData(True)
If FirstIdx = 0 Then '//Index is first
WLog2(Auto_Log, "View : First Record // Set = 0", "\Alllog.txt")
Else '//index is not first
WLog2(Auto_Log, "View : Index Count = " & FirstIdx, "\Alllog.txt")
End If
Me.BindingSource1.DataSource = Dv 'Dv '//여기서셋팅되면서 바로 tview 가 작동된다.
Me.BindingSource1.Sort = "정렬번호,번호" ',번호"
Me.VScrollBar1.Value = FirstIdx
Me.BindingSource1.Position = FirstIdx
Me.dataview.DataSource = Me.BindingSource1
'MsgBox("ASDF" & Me.BindingNavigatorPositionItem.Text)
If FirstIdx = 0 Then Me.GeTviewData(Me.BindingNavigatorPositionItem.Text - 1, True)
End If
''WLog2(Auto_Log, "cmb_style selectindexchanged 에서 preview 를 호출함", "\지중(케이블)순차로그.txt")
'Me.preview_window()
End Sub
Public Sub LOAD_STYLE(Optional ByVal Div As String = "Z") '//저장된 스타일을 불러옵니다.
' MsgBox("LOADSTYLE" & "/" & Div)
' MsgBox("LOADSTYLE" & "/" & Div)
WLog2(Auto_Log, "load_style : 스타일을 불러옵니다. div= " & Div, "\지중(케이블)순차로그.txt")
Dim Arinini As New MyINI2(drstyle.File)
Dim pos(), font(), visible, mytext, repeat() As String
Dim Tobj As MyControlOLEDBv2.MyLabel
Dim DR() As DataRow
Dim idx As Integer = 0
'//모든아이템을 돈다
For i As Integer = 0 To Me.AllLabels.GetUpperBound(0) '//모든아이템을 돈다.
Tobj = Me.AllLabels(i).ctl
If Div.ToUpper = "Z" Then '//모든아이템을 가져오고
'//메모리에서 찾는다.
Tobj.Tag = ""
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "POS'")
If DR.GetUpperBound(0) = 0 Then
pos = DR(0)(1).ToString.Split(",")
Tobj.Location = New Point(pos(0), pos(1))
Tobj.Size = New Size(pos(2), pos(3))
End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "FONT'")
If DR.GetUpperBound(0) = 0 Then
font = DR(0)(1).ToString.Split(",")
Tobj.장평 = font(5)
Tobj.장높이 = font(6)
Tobj.MyFont = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point)
End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "REPEAT'")
If DR.GetUpperBound(0) = 0 Then
repeat = DR(0)(1).ToString.Split(",")
Tobj.Repeat = repeat(0)
Tobj.RepeatX = repeat(1)
Tobj.RepeatY = repeat(2)
End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "VISIBLE'")
If DR.GetUpperBound(0) = 0 Then
visible = DR(0)(1).ToString
Tobj.Visible = CType(visible, Boolean)
End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "MYTEXT'")
If DR.GetUpperBound(0) = 0 Then
mytext = DR(0)(1).ToString
Select Case Tobj.Name.ToUpper.Substring(0, 1)
Case "U", "A", "B", "D", "E" '//사용자문자일경우에는 문자열도 저장해야한다.
If mytext <> "" Then Tobj.MyText = TextDec(mytext) '//ini구조상 바로저장하면안되기때문에 변환해서 저장한다.
End Select
End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "SPACE'")
If DR.GetUpperBound(0) = 0 Then Tobj.공백 = DR(0)(1).ToString
Else '//특정아이템구분일때
If Tobj.DIV = Div Then
'//메모리에서 찾는다.
Tobj.Tag = ""
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "POS'")
If DR.GetUpperBound(0) = 0 Then
pos = DR(0)(1).ToString.Split(",")
Tobj.Location = New Point(pos(0), pos(1))
Tobj.Size = New Size(pos(2), pos(3))
End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "FONT'")
If DR.GetUpperBound(0) = 0 Then
font = DR(0)(1).ToString.Split(",")
Tobj.장평 = font(5)
Tobj.장높이 = font(6)
Tobj.MyFont = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point)
End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "REPEAT'")
If DR.GetUpperBound(0) = 0 Then
repeat = DR(0)(1).ToString.Split(",")
Tobj.Repeat = repeat(0)
Tobj.RepeatX = repeat(1)
Tobj.RepeatY = repeat(2)
End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "VISIBLE'")
If DR.GetUpperBound(0) = 0 Then
visible = DR(0)(1).ToString
Tobj.Visible = CType(visible, Boolean)
End If
'DR = dtpattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "MYTEXT'")
'If DR.GetUpperBound(0) = 0 Then
'mytext = DR(0)(1).ToString
'Select Case Tobj.Name.ToUpper.Substring(0, 1)
' Case "U", "A", "B", "D", "E" '//사용자문자일경우에는 문자열도 저장해야한다.
'If mytext <> "" Then Tobj.MyText = TextDec(mytext) '//ini구조상 바로저장하면안되기때문에 변환해서 저장한다.
'End Select
'End If
DR = DtPattern.Select("NAME = 'STYLE" & Tobj.Name.ToUpper & "SPACE'")
If DR.GetUpperBound(0) = 0 Then Tobj.공백 = DR(0)(1).ToString
End If
End If
Next
If Div.ToUpper <> "Z" Then Return '//모든템이아니다
WLog2(Auto_Log, "load_style 기본값 체크박스등의 값을 불러온다. 이것은 맨첨에만 불러오면 된다. ", "\지중(케이블)순차로그.txt")
'''''''''''''''''''''우측 스타일 체크박스를 가져온다.
For Each B As Control In Me.TabPage1.Controls
If B.GetType.Name.ToUpper = "CHECKBOX" Then '//체크박스라면 태그를 저장한다.
CType(B, System.Windows.Forms.CheckBox).Checked = Arinini.Read("STYLE", B.Name, False) '//기본값 false
End If
Next
For Each B As Control In Me.TabPage3.Controls
If B.GetType.Name.ToUpper = "CHECKBOX" Then '//체크박스라면 태그를 저장한다.
CType(B, System.Windows.Forms.CheckBox).Checked = Arinini.Read("STYLE", B.Name, False) '//기본값 false
End If
Next
For Each B As Control In Me.TabPage7.Controls
If B.GetType.Name.ToUpper = "CHECKBOX" Then '//체크박스라면 태그를 저장한다.
CType(B, System.Windows.Forms.CheckBox).Checked = Arinini.Read("STYLE", B.Name, False) '//기본값 false
End If
Next
''''''''''''''''''''''''''''외'''''''''''''''''''''''''''''''''
Me.tb_marginx.Text = drstyle.MarginX 'Arinini.Read("STYLE", "MarginX", 10)
Me.tb_marginy.Text = drstyle.MarginY ' Arinini.Read("STYLE", "MarginY", 10)
Me.tb_scalex.Text = drstyle.ScaleX ' Arinini.Read("STYLE", "ScaleX", "1.5")
Me.tb_scaley.Text = drstyle.ScaleY ' Arinini.Read("STYLE", "ScaleY", "1.3")
''''''''''''2중
'//더미는 이제 사용하지않는다.20090729 변경
'Dim UseDummy As Boolean = drstyle.Dummy 'Arinini.Read("STYLE", "dummy", False)
'Try
Me.tb_pagerepeat.Text = drstyle.DummyCnt
If Me.tb_pagerepeat.Text.Trim = "" OrElse Me.tb_pagerepeat.Text < 1 Then Me.tb_pagerepeat.Text = "1"
'Catch ex As Exception
' If UseDummy Then
' Me.tb_pagerepeat.Text = "2"
' Else
' Me.tb_pagerepeat.Text = "1"
' End If
'End Try
Me.cmb_dummy.SelectedIndex = drstyle.Dummytype ' Arinini.Read("STYLE", "dummytype", 0)
Me.tb_secX.Text = drstyle.dummmyx ' Arinini.Read("STYLE", "dummmyx", "0")
Me.tb_secY.Text = drstyle.dummmyy ' Arinini.Read("STYLE", "dummmyy", "300")
If drstyle.Backimg.IndexOf("\") = -1 Then
Me.tb_picfile.Text = My.Application.Info.DirectoryPath & "\image\" & drstyle.Backimg
Else
Me.tb_picfile.Text = drstyle.Backimg ' Arinini.Read("STYLE", "backimg", My.Application.Info.DirectoryPath & "\image\wall.bmp").ToString.Trim(Chr(0))
End If
Me.ViewBackImage() '//배경이미지를 표시한다.
Me.pDoc.DefaultPageSettings.Landscape = drstyle.LandScape ' Arinini.Read("STYLE", "LandScape", False)
Me.cmb_landscape.SelectedIndex = IIf(Me.pDoc.DefaultPageSettings.Landscape, 1, 0)
'Me.SetLayOut(IIf(Me.cmb_landscape.SelectedIndex = 0, False, True))
Me.chk_DisplayBG.Checked = drstyle.Viewimage ' Arinini.Read("STYLE", "ViewImage", True)
Me.Chk_BgImageprint.Checked = drstyle.Printbg
Me.tb_bakx.Text = drstyle.bakx
Me.tb_baky.Text = drstyle.baky
Me.tb_bakw.Text = drstyle.bakw
Me.tb_bakh.Text = drstyle.bakh
Try
Me.cboCorrectionLevel.Text = Arinini.Read("STYLE", "qrlevel", 1)
Me.cboEncoding.Text = Arinini.Read("STYLE", "qrencoding", 2)
Me.cboVersion.Text = Arinini.Read("STYLE", "qrvison", 1)
Dim qrbgstr As String = Arinini.Read("STYLE", "qrbg", "")
Dim qrfgstr As String = Arinini.Read("STYLE", "qrfg", "")
If qrbgstr = "" Then
lbQrBg.BackColor = Drawing.Color.White
Else
lbQrBg.BackColor = Drawing.Color.FromArgb(CInt(qrbgstr))
End If
If qrfgstr = "" Then
lbQrFG.BackColor = Drawing.Color.Black
Else
lbQrFG.BackColor = Drawing.Color.FromArgb(CInt(qrfgstr))
End If
Catch ex As Exception
MessageBox.Show(ex.ToString())
End Try
Me.tb_myfontsize.Text = drstyle.PrintFontOffset ' Arinini.Read("STYLE", "PrintFontOffset", 0)
NOTICE(Me.cmb_style.Text & "스타일을 불러왔습니다.", Me.lb_msg)
End Sub
Public Sub SAVE_STYLE()
WLog2(Auto_Log, "ini파일에 스타일을 저장합니다. ", "\지중(케이블)순차로그.txt")
Dim Arinini As New MyINI2(drstyle.File)
Dim Arininic As New MyINI2(CStr(drstyle.File).ToLower.Replace("ini", "cfg"))
Dim Tobj As MyControlOLEDBv2.MyLabel
'//현재 선택된 스타일을 저장합니다.
If Me.cmb_style.SelectedIndex < 0 Then
erp.SetError(Me.cmb_style, "저장할 스타일이 선택되어있지 않습니다")
NOTICE("스타일을 선택하세요", Me.lb_msg)
Return
End If
erp.SetError(Me.cmb_style, vbNullString)
Dim f As New fProgress()
f.ProgressBar1.Minimum = 0
f.ProgressBar1.Maximum = Me.AllLabels.Length
f.ProgressBar1.Value = 0
f.ProgressBar1.Style = ProgressBarStyle.Blocks
f.Label1.Text = String.Format("스타일을 저장합니다" + vbCrLf + "Control")
'f.TopMost = True
f.Show()
Application.DoEvents()
For i As Integer = 0 To Me.AllLabels.GetUpperBound(0)
f.ProgressBar1.Value += 1
f.Refresh()
Tobj = Me.AllLabels(i).ctl
If Tobj.Pattern = "" Then
Arinini.Write("STYLE", Tobj.Name & "pos", Tobj.Left & "," & Tobj.Top & "," & Tobj.Width & "," & Tobj.Height)
Arinini.Write("STYLE", Tobj.Name & "font", Tobj.MyFont.Name & "," & Tobj.MyFont.Size & "," & Tobj.MyFont.Underline & "," & Tobj.MyFont.Bold & "," & Tobj.MyFont.Italic & "," & Tobj.장평 & "," & Tobj.장높이)
Arinini.Write("STYLE", Tobj.Name & "visible", "true") '기본값으로 표시로 정해놓고 체크박스 체크한다.
Arinini.Write("STYLE", Tobj.Name & "space", Tobj.공백)
Arinini.Write("STYLE", Tobj.Name & "repeat", Tobj.Repeat & "," & Tobj.RepeatX & "," & Tobj.RepeatY) '//반복출력정보저장
End If
Next
f.Label1.Text = String.Format("스타일을 저장합니다" + vbCrLf + "CheckBox")
f.Show()
Application.DoEvents()
f.ProgressBar1.Style = ProgressBarStyle.Marquee
For Each TC As TabPage In Me.TabControl1.TabPages '//탭컨트롤1의 모든 페이지에서 체크박스의 상태를 저장한다.
For Each B As Control In TC.Controls
If B.GetType.Name.ToUpper = "CHECKBOX" Then '//체크박스라면 태그를 저장한다.
Arinini.Write("STYLE", B.Name, CType(B, System.Windows.Forms.CheckBox).Checked) 'A.Visible)
End If
Next
Next
f.Label1.Text = String.Format("스타일을 저장합니다" + vbCrLf + "일반정보")
f.Show()
Application.DoEvents()
Arinini.Write("STYLE", "ViewImage", Me.chk_DisplayBG.Checked)
Arinini.Write("STYLE", "printbg", Me.Chk_BgImageprint.Checked)
Arininic.Write("printer", "printbg", Me.Chk_BgImageprint.Checked)
If Not IsNumeric(tb_marginx.Text) Then
MsgBox("인쇄여백(가로) 값을 숫자로 입력하세요." + vbCrLf + "현재입력값:" + tb_marginx.Text, MsgBoxStyle.Information, "확인")
Else
Arininic.Write("printer", "MarginX", Me.tb_marginx.Text)
End If
If Not IsNumeric(tb_marginy.Text) Then
MsgBox("인쇄여백(세로) 값을 숫자로 입력하세요." + vbCrLf + "현재입력값:" + tb_marginy.Text, MsgBoxStyle.Information, "확인")
Else
Arininic.Write("printer", "MarginY", Me.tb_marginy.Text)
End If
If Not IsNumeric(tb_scalex.Text) Then
MsgBox("확대비율(가로) 값을 숫자로 입력하세요." + vbCrLf + "현재입력값:" + tb_scalex.Text, MsgBoxStyle.Information, "확인")
Else
Arininic.Write("printer", "ScaleX", Me.tb_scalex.Text)
End If
If Not IsNumeric(tb_scaley.Text) Then
MsgBox("확대비율(세로) 값을 숫자로 입력하세요." + vbCrLf + "현재입력값:" + tb_scaley.Text, MsgBoxStyle.Information, "확인")
Else
Arininic.Write("printer", "ScaleY", Me.tb_scaley.Text)
End If
'Arininic.Write("printer", "MarginX", Me.tb_marginx.Text)
'Arininic.Write("printer", "MarginY", Me.tb_marginy.Text)
'Arininic.Write("printer", "ScaleX", Me.tb_scalex.Text)
'Arininic.Write("printer", "ScaleY", Me.tb_scaley.Text)
Arininic.Write("printer", "bakx", Me.tb_bakx.Text)
Arininic.Write("printer", "baky", Me.tb_baky.Text)
Arininic.Write("printer", "bakw", Me.tb_bakw.Text)
Arininic.Write("printer", "bakh", Me.tb_bakh.Text)
Arinini.Write("STYLE", "bakx", Me.tb_bakx.Text)
Arinini.Write("STYLE", "baky", Me.tb_baky.Text)
Arinini.Write("STYLE", "bakw", Me.tb_bakw.Text)
Arinini.Write("STYLE", "bakh", Me.tb_bakh.Text)
If Me.tb_picfile.Text.Trim = "" Then
Arinini.Write("STYLE", "backimg", "")
Else
Dim newpath As String = CStr(My.Application.Info.DirectoryPath & "\image\").ToUpper
Dim NEwpathp As Short = (Me.tb_picfile.Text.ToUpper.IndexOf(newpath))
If NEwpathp = -1 Then
Arinini.Write("STYLE", "backimg", Me.tb_picfile.Text)
Else
Arinini.Write("STYLE", "backimg", Me.tb_picfile.Text.Substring(NEwpathp + newpath.Length))
End If
End If
Arininic.Write("printer", "PrintFontOffset", Me.tb_myfontsize.Text)
Arinini.Write("STYLE", "LandScape", Me.pDoc.DefaultPageSettings.Landscape)
'//더미 체크박스랑 더미콤보박스 인덱스랑 변위 x,y
' Arinini.Write("STYLE", "dummy", Me.cb_dummy.Checked)
Arinini.Write("STYLE", "dummycnt", Me.tb_pagerepeat.Text)
Arinini.Write("STYLE", "dummytype", Me.cmb_dummy.SelectedIndex)
Arinini.Write("STYLE", "dummmyx", Me.tb_secX.Text)
Arinini.Write("STYLE", "dummmyy", Me.tb_secY.Text)
' Arinini.Write("STYLE", "picstyle", Me.ComboBox1.SelectedIndex)
'//QR코드
Arinini.Write("STYLE", "qrencoding", Me.cboEncoding.Text)
Arinini.Write("STYLE", "qrlevel", Me.cboCorrectionLevel.Text)
Arinini.Write("STYLE", "qrvison", Me.cboVersion.Text)
Arinini.Write("STYLE", "qrfg", Me.lbQrFG.BackColor.ToArgb().ToString())
Arinini.Write("STYLE", "qrbg", Me.lbQrBg.BackColor.ToArgb().ToString())
f.Label1.Text = String.Format("스타일을 저장합니다" + vbCrLf + "레이아웃")
f.Show()
Application.DoEvents()
Me.SaveReadLayOut(False)
f.Label1.Text = String.Format("스타일을 저장합니다" + vbCrLf + "그리기개체")
f.Show()
Application.DoEvents()
Me.SaveDrawData(False)
NOTICE("기본스타일을 저장했습니다", Me.lb_msg)
WLog2(Auto_Log, "save style 완료후 데이터테이블 갱신을 호춣 ", "\지중(케이블)순차로그.txt")
f.Close()
f.Dispose()
Application.DoEvents()
Me.데이터테이블갱신()
Me.preview_window()
End Sub
Private Sub bt_canvasD_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles bt_canvasD.MouseDown, bt_canvasL.MouseDown, bt_canvasR.MouseDown, bt_canvasU.MouseDown
If e.Button = System.Windows.Forms.MouseButtons.Right Then
Select Case sender.name.ToString.ToUpper
Case "BT_CANVASD"
Me.PictureBox1.Top += 5
Case "BT_CANVASU"
Me.PictureBox1.Top -= 5
Case "BT_CANVASR"
Me.PictureBox1.Left += 5
Case "BT_CANVASL"
Me.PictureBox1.Left -= 5
End Select
End If
End Sub
Public Sub SAVE_PATTERNII(ByVal labels() As MyControlOLEDBv2.MyLabel, ByVal SRCSTR As String, Optional ByVal LOGFILENAME As String = "\패턴.TXT") '패턴을 저장합니다. 패턴역시 위치/크기/장평등이 저장됩니다.
Dim Arinini As New MyINI2(drstyle.File)
Dim BUF() As Char = SRCSTR.ToCharArray
Dim mb As String = PATTERN_ENC(SRCSTR)
Dim MidName As String = labels(0).Pattern
'선로명 패턴 저장
Dim TOBJ As MyControlOLEDBv2.MyLabel
Dim Pname As String = MidName & "II" & mb.ToString
WLog2(Auto_Log, " save_pattern2 를 실행한다.", "\지중(케이블)순차로그.txt")
For i As Integer = 0 To labels.GetUpperBound(0)
TOBJ = labels(i)
WLog2(Auto_Log, MidName & "패턴저장시 아이템=" & TOBJ.Name & "/" & TOBJ.Name.Substring(0, 1).ToUpper, LOGFILENAME)
Arinini.Write(Pname, "DESC", "저장된 문자패턴 " & MidName)
WLog2(Auto_Log, "최종선택완료=" & Pname & " " & TOBJ.Name & "/" & TOBJ.Name.Substring(0, 1).ToUpper, LOGFILENAME)
Arinini.Write(Pname, TOBJ.Name & "pos", TOBJ.Left & "," & TOBJ.Top & "," & TOBJ.Width & "," & TOBJ.Height)
Arinini.Write(Pname, TOBJ.Name & "font", TOBJ.MyFont.Name & "," & TOBJ.MyFont.Size & "," & TOBJ.MyFont.Underline & "," & TOBJ.MyFont.Bold & "," & TOBJ.MyFont.Italic & "," & TOBJ.장평 & "," & TOBJ.장높이)
Arinini.Write(Pname, TOBJ.Name & "visible", TOBJ.Visible)
Arinini.Write(Pname, TOBJ.Name & "space", TOBJ.공백)
Arinini.Write(Pname, TOBJ.Name & "repeat", TOBJ.Repeat & "," & TOBJ.RepeatX & "," & TOBJ.RepeatY) '//반복출력정보저장
Next
Arinini.Write(Pname, "LineType", Me.tb_ntype.Text)
Arinini.Write(Pname, "nseparate", Me.cmb_sep.SelectedIndex)
WLog2(Auto_Log, "save_patter2 ㅔ서 데이터테이블 갱신을 ㅎ호출한다ㅣㅣ ", "\지중(케이블)순차로그.txt")
Me.데이터테이블갱신()
End Sub
Private Sub cmb_controls_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb_controls.SelectedIndexChanged
'//개체가 선택되면 해당 개체의 내역을 보여준다.
'Me.Timer1.Enabled = False
WLog2(Auto_Log, "개체목록 콤보박스에서 특정 개체가 선택되었다 view property 호출", "\지중(케이블)순차로그.txt")
ViewProperty(AllLabels(Me.cmb_controls.SelectedIndex).ctl)
End Sub
Private Sub cb_visible_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cb_visible.CheckedChanged
WLog2(Auto_Log, "표시 체크박스 선택 ", "\지중(케이블)순차로그.txt")
For Each a As Control In SelCon
a.Visible = Me.cb_visible.Checked
Next
WLog2(Auto_Log, "[표시] 체크박스 선택에서 pewview를 호출 ", "\지중(케이블)순차로그.txt")
Me.preview_window()
End Sub
Private Sub tb_foncol_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles tb_foncol.DoubleClick
WLog2(Auto_Log, " 글씨색깔 변경 클릭됨", "\지중(케이블)순차로그.txt")
Dim A As New ColorDialog
If A.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
For Each Onlyone As MyControlOLEDBv2.MyLabel In SelCon
Onlyone.MyForeColor = A.Color
Next
Me.tb_foncol.BackColor = A.Color
End If
Me.preview_window()
End Sub
Private Sub cb_bold_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cb_bold.CheckedChanged
WLog2(Auto_Log, "글씨꿁게 선택됨 setfont 호출 ", "\지중(케이블)순차로그.txt")
SetFont()
End Sub
Private Sub UpdateFontSize(ByVal newsize As Integer, Optional ByVal Src As MyControlOLEDBv2.MyLabel = Nothing) '
WLog2(Auto_Log, "updatefont : ", "\지중(케이블)순차로그.txt")
Dim A As Font
For Each Tobj As MyControlOLEDBv2.MyLabel In SelCon
A = New Font(Tobj.MyFont.FontFamily, newsize, FontStyle.Regular, GraphicsUnit.Point)
Tobj.MyFont = A
Next
Me.SetFont()
End Sub
Public Sub CtrSize(ByVal vertical As Boolean, ByVal offset As Short)
If SelCon Is Nothing OrElse SelCon.Count < 1 Then Exit Sub
For Each sender As MyControlOLEDBv2.MyLabel In SelCon
If vertical Then '//상하
If My.Computer.Keyboard.CtrlKeyDown Then
If offset < 0 Then
sender.장높이 -= 10
Else
sender.장높이 += 10
End If
Else
sender.장높이 += offset
End If
Else '//좌우
If My.Computer.Keyboard.CtrlKeyDown Then
If offset < 0 Then
sender.장평 -= 10
Else
sender.장평 += 10
End If
Else
sender.장평 += offset
End If
End If
Next
Me.preview_window()
End Sub
Public Sub LOAD_STYLEC(ByVal StyleName As String, ByVal Div As String)
'//기타스타일은 빈도가 적으니 파일에서 불러오기로한다.;;메모리는 싫타.
Dim Arinini As New MyINI2(FileC)
If Not IO.File.Exists(FileC) Then
MsgBox("기타스타일설정 파일이 존재하지 않습니다\n\n관리자에 문의하세요", MsgBoxStyle.Critical, "오류")
Return
End If
Dim pos(), font(), visible As String '//구전산번호를 구현해본다.
Dim Tobj As MyControlOLEDBv2.MyLabel
For i As Integer = 0 To Me.AllLabels.GetUpperBound(0)
Tobj = Me.AllLabels(i).ctl
Try
If Div.ToUpper = "Z" Then '//모든아이템을 가져오고
pos = Arinini.Read(StyleName, Tobj.Name & "pos").Split(",")
font = Arinini.Read(StyleName, Tobj.Name & "font").Trim(Chr(0)).Split(",")
visible = Arinini.Read(StyleName, Tobj.Name & "visible")
'//상태를 읽어서 바로 적용한다.
Tobj.Location = New Point(pos(0), pos(1))
Tobj.Size = New Size(pos(2), pos(3))
Tobj.MyFont = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point)
Tobj.장평 = font(5)
Tobj.장높이 = font(6)
Tobj.공백 = Arinini.Read(StyleName, Tobj.Name & "space", 0)
Tobj.Visible = CType(visible, Boolean)
Else '이곳에 O가올것이다.
If Tobj.DIV = Div Then
pos = Arinini.Read(StyleName, Tobj.Name & "pos").Split(",")
font = Arinini.Read(StyleName, Tobj.Name & "font").Trim(Chr(0)).Split(",")
visible = Arinini.Read(StyleName, Tobj.Name & "visible")
'//상태를 읽어서 바로 적용한다.
Tobj.Location = New Point(pos(0), pos(1))
Tobj.Size = New Size(pos(2), pos(3))
Tobj.MyFont = New Font(font(0), font(1), IIf(font(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point)
Tobj.장평 = font(5)
Tobj.장높이 = font(6)
Tobj.공백 = Arinini.Read(StyleName, Tobj.Name & "space", 0)
Tobj.Visible = CType(visible, Boolean)
End If
End If
Catch ex As Exception
WLog2(Auto_Log, "LOAD_STYLE_CUSTOM 오류:" & ex.Message.ToString, "LOAD_STYLEC")
End Try
Next
NOTICE(StyleName & "기타스타일을 불러왔습니다.", Me.lb_msg)
Me.preview_window()
End Sub
Public Sub SAVE_STYLEC(ByVal stylename As String, ByVal div As String) '//기타스타일 저장한다.
Dim Arinini As New MyINI2(FileC)
'//현재 선택된 스타일을 저장합니다.
Arinini.Write(stylename, "DESC", stylename)
Dim Tobj As MyControlOLEDBv2.MyLabel
For i As Integer = 0 To Me.AllLabels.GetUpperBound(0)
Tobj = Me.AllLabels(i).ctl
Arinini.Write(stylename, Tobj.Name & "pos", Tobj.Left & "," & Tobj.Top & "," & Tobj.Width & "," & Tobj.Height)
Arinini.Write(stylename, Tobj.Name & "font", Tobj.MyFont.Name & "," & Tobj.MyFont.Size & "," & Tobj.MyFont.Underline & "," & Tobj.MyFont.Bold & "," & Tobj.MyFont.Italic & "," & Tobj.장평 & "," & Tobj.장높이)
Arinini.Write(stylename, Tobj.Name & "visible", Tobj.Visible)
Arinini.Write(stylename, Tobj.Name & "space", Tobj.공백)
Next
NOTICE("기타스타일을 저장했습니다", Me.lb_msg)
End Sub
Private Sub BindingNavigatorPositionItem_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles BindingNavigatorPositionItem.KeyUp
'//현재위치에서 엔터켯을경우 데이터베이스 위치값을 변경한다.(position)
If e.KeyCode = Keys.Enter Then
If IsNumeric(Me.BindingNavigatorPositionItem.Text) Then Me.GeTviewData(Me.BindingNavigatorPositionItem.Text - 1, True)
End If
End Sub
Private Sub showcnt(ByVal cnt1 As Integer, ByVal cnt2 As Integer, Optional ByVal tag As String = "")
Me.lb_msg.Text = cnt1 & "/" & cnt2 & Space(1) & tag
My.Application.DoEvents()
End Sub
Private Sub NPartternCheck()
Dim 번호패턴검사 As Integer = 0
'//패턴검사시작
' Me.PictureBox1.Image = Image.FromFile(My.Application.Info.DirectoryPath & "\image\start.png")
For i As Integer = Me.textbox1.Text To Me.textbox2.Text
Me.showcnt(i, Me.textbox2.Text)
Me.textbox1.Text = i
번호패턴검사 = ChkNumPattern(i)
' MsgBox(번호패턴검사)
If 번호패턴검사 = 0 Then '1은 길이패턴이 없고 3이나 2는 문자패턴이다
NOTICE("일련번호=" & i + 1 & "번 문자,길이 패턴이 존재하지 않습니다", Me.lb_msg)
My.Computer.Audio.Play(My.Application.Info.DirectoryPath & "\sound\ding.wav", AudioPlayMode.Background)
'If MsgBox("Sdf", MsgBoxStyle.OkCancel) = MsgBoxResult.Ok Then
Me.BindingSource1.Position = i
Exit For
End If
Next
If Me.textbox1.Text = Me.textbox2.Text Then '//완료되었다면
My.Computer.Audio.Play(My.Application.Info.DirectoryPath & "\sound\notify.wav", AudioPlayMode.Background)
NOTICE("패턴검사가 완료되었습니다", Me.lb_msg)
End If
Me.bt_chkpattern.Text = "시작(&S)"
End Sub
Private Sub tb_printrange_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tb_printrange.TextChanged
If Me.rad_repeat.Checked = False Then Me.RadioButton3.Checked = True
End Sub
Public Function PARSE(ByVal srcstr As String, ByVal Mylabels() As MyControlOLEDBv2.MyLabel) As Boolean
'/선로명의 길이는 예측되지 않는다 동적 컨트롤 생성을 사용한다.
' MsgBox("PARSET_관리구")
Me.CLEAR_ITEM(Mylabels)
Dim Log As String = "\Parse_" & Mylabels(0).Name & ".txt"
If srcstr = "" OrElse Not Mylabels(0).CheckBox.Checked Then
WLog2(Auto_Log, "Zero Length - Return", Log)
Return False
End If
WLog2(Auto_Log, "pase 시작", Log)
Dim Wlen As Short = srcstr.Length
Dim SepPos As Short = srcstr.IndexOf(";")
Dim SRC() As Char = srcstr.ToCharArray
WLog2(Auto_Log, "Length=" & Wlen & " Sep=" & SepPos, Log)
If Mylabels.GetUpperBound(0) = 0 Then
Mylabels(0).MyText = srcstr
Mylabels(0).Visible = True
Else
For i As Integer = 0 To Wlen - 1 '//모든문자를 할당한다.
Try
Select Case SRC(i)
Case ";"
Mylabels(i).MyText = "---"
Mylabels(i).Visible = True
Case ":"
Mylabels(i).MyText = ""
Mylabels(i).Visible = True
Case Else
Mylabels(i).MyText = SRC(i)
Mylabels(i).Visible = True
End Select
Catch ex As Exception
Exit For
End Try
Next
End If
Return True
End Function
Public Sub PARSE_PATTERN(ByVal Srcstr As String, ByVal labels() As MyControlOLEDBv2.MyLabel, Optional ByVal BlineNum As String = "")
Dim Wlen As Short = Srcstr.Length : If Wlen <= 0 Then Return '//없는 글귀가 왓을때 턴해버린다.
Dim Log As String = "\PATTERN_" & labels(0).Name & ".txt"
'//먼저패턴이 존재하는지 확인해본다.
'길이패턴여부를 확인했으므로 패턴을적용한다.[STYLE1LINEPATTERN9]
Dim Pname As String = labels(0).Pattern & Wlen
If BlineNum <> "" Then '//줄그룹
' Me.길이패턴연습(Srcstr, "LNUM" & BlineNum & Pname, Log, labels(0).Tag, labels)
Pname = labels(0).Pattern & "II" & PATTERN_ENC(Srcstr)
Me.문자패턴연습(Srcstr, "LNUM" & BlineNum & Pname, Log, labels)
Else
' Me.길이패턴연습(Srcstr, Pname, Log, labels(0).Tag, labels)
Pname = labels(0).Pattern & "II" & PATTERN_ENC(Srcstr)
Me.문자패턴연습(Srcstr, Pname, Log, labels)
End If
'//패턴1이 끝났다 패턴2를 찾는다.
'//패턴2는 style1LInepatternII문자숫자형식
End Sub
Private Sub tb_ntype_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
If e.KeyCode = Keys.Enter Then
If Me.cmb_sep.SelectedIndex = 1 Then
NOTICE("분리상태에서는 번호지정이 불가능합니다", Drawing.Color.Red, Me.lb_msg)
Else
' 번호형식지정(Me.tb_ntype.Text)
End If
Me.preview_window()
End If
End Sub
Private Sub SaveReadLayOut(ByVal read As Boolean) '//현재 화면구성을 가로/세로 결정합니다.
'//ini파일에저장한다. 섹션명은 pagetype0 ,pagetyp1 0은 세로 1은 가로다
Dim ini As New MyINI2(drstyle.File) 'drstyle.File)
Dim Secname As String = "pagetype" & Me.cmb_landscape.SelectedIndex
If read = False Then
ini.Write(Secname, "tablelayoutpanel1loc", Me.TableLayoutPanel1.Left & "," & Me.TableLayoutPanel1.Top)
ini.Write(Secname, "tablelayoutpanel1size", Me.TableLayoutPanel1.Width & "," & Me.TableLayoutPanel1.Height)
ini.Write(Secname, "PictureBox1loc", Me.PictureBox1.Left & "," & Me.PictureBox1.Top)
ini.Write(Secname, "PictureBox1size", Me.PictureBox1.Width & "," & Me.PictureBox1.Height)
ini.Write(Secname, "TabControl1loc", Me.TabControl1.Left & "," & Me.TabControl1.Top)
ini.Write(Secname, "TabControl1size", Me.TabControl1.Width & "," & Me.TabControl1.Height)
ini.Write(Secname, "GroupBox3loc", Me.GroupBox3.Left & "," & Me.GroupBox3.Top)
ini.Write(Secname, "GroupBox3size", Me.GroupBox3.Width & "," & Me.GroupBox3.Height)
ini.Write(Secname, "GroupBox2loc", Me.GroupBox2.Left & "," & Me.GroupBox2.Top)
ini.Write(Secname, "GroupBox2size", Me.GroupBox2.Width & "," & Me.GroupBox2.Height)
ini.Write(Secname, "cmb_styleloc", Me.cmb_style.Left & "," & Me.cmb_style.Top)
ini.Write(Secname, "cmb_stylesize", Me.cmb_style.Width & "," & Me.cmb_style.Height)
ini.Write(Secname, "ToolStrip2loc", Me.ToolStrip2.Left & "," & Me.ToolStrip2.Top)
ini.Write(Secname, "mesize", Me.Width & "," & Me.Height)
Else '//여기는 읽는 부분
If Me.cmb_landscape.SelectedIndex = 0 Then '//세로
Me.pDoc.DefaultPageSettings.Landscape = False
TableLayoutPanel1.Location = New Point(ini.Read(Secname, "tablelayoutpanel1loc", "0,31").Split(",")(0), ini.Read(Secname, "tablelayoutpanel1loc", "0,31").Split(",")(1))
TableLayoutPanel1.Size = New Size(ini.Read(Secname, "tablelayoutpanel1size", "297,522").Split(",")(0), ini.Read(Secname, "tablelayoutpanel1size", "297,522").Split(",")(1))
PictureBox1.Location = New Point(ini.Read(Secname, "PictureBox1loc", "3,3").Split(",")(0), ini.Read(Secname, "PictureBox1loc", "3,3").Split(",")(1))
PictureBox1.Size = New Size(ini.Read(Secname, "PictureBox1size", "270,479").Split(",")(0), ini.Read(Secname, "PictureBox1size", "270,479").Split(",")(1))
TabControl1.Location = New Point(ini.Read(Secname, "TabControl1loc", "303,34").Split(",")(0), ini.Read(Secname, "TabControl1loc", "303,34").Split(",")(1))
TabControl1.Size = New Size(ini.Read(Secname, "TabControl1size", "279,519").Split(",")(0), ini.Read(Secname, "TabControl1size", "279,519").Split(",")(1))
TabControl2.Location = New Point(ini.Read(Secname, "TabControl2loc", "16,246").Split(",")(0), ini.Read(Secname, "TabControl2loc", "16,246").Split(",")(1))
GroupBox3.Location = New Point(ini.Read(Secname, "GroupBox3loc", "11,368").Split(",")(0), ini.Read(Secname, "GroupBox3loc", "11,368").Split(",")(1))
GroupBox3.Size = New Size(ini.Read(Secname, "GroupBox3size", "246,78").Split(",")(0), ini.Read(Secname, "GroupBox3size", "246,78").Split(",")(1))
GroupBox2.Location = New Point(ini.Read(Secname, "GroupBox2loc", "11,170").Split(",")(0), ini.Read(Secname, "GroupBox2loc", "11,170").Split(",")(1))
GroupBox2.Size = New Size(ini.Read(Secname, "GroupBox2size", "245,192").Split(",")(0), ini.Read(Secname, "GroupBox2size", "245,192").Split(",")(1))
cmb_style.Location = New Point(ini.Read(Secname, "cmb_styleloc", "11,18").Split(",")(0), ini.Read(Secname, "cmb_styleloc", "11,18").Split(",")(1))
cmb_style.Size = New Size(ini.Read(Secname, "cmb_stylesize", "245,146").Split(",")(0), ini.Read(Secname, "cmb_stylesize", "245,146").Split(",")(1))
ToolStrip2.Location = New Point(ini.Read(Secname, "ToolStrip2loc", "3,451").Split(",")(0), ini.Read(Secname, "ToolStrip2loc", "3,451").Split(",")(1))
Me.Size = New Size(ini.Read(Secname, "mesize", "588,632").Split(",")(0), ini.Read(Secname, "mesize", "588,632").Split(",")(1))
Else
Me.pDoc.DefaultPageSettings.Landscape = True
TableLayoutPanel1.Location = New Point(ini.Read(Secname, "tablelayoutpanel1loc", "0,31").Split(",")(0), ini.Read(Secname, "tablelayoutpanel1loc", "0,31").Split(",")(1))
TableLayoutPanel1.Size = New Size(ini.Read(Secname, "tablelayoutpanel1size", "710,292").Split(",")(0), ini.Read(Secname, "tablelayoutpanel1size", "710,292").Split(",")(1))
PictureBox1.Location = New Point(ini.Read(Secname, "PictureBox1loc", "325,3").Split(",")(0), ini.Read(Secname, "PictureBox1loc", "325,3").Split(",")(1))
PictureBox1.Size = New Size(ini.Read(Secname, "PictureBox1size", "355,200").Split(",")(0), ini.Read(Secname, "PictureBox1size", "355,200").Split(",")(1))
TabControl1.Location = New Point(ini.Read(Secname, "TabControl1loc", "3,326").Split(",")(0), ini.Read(Secname, "TabControl1loc", "3,326").Split(",")(1))
TabControl1.Size = New Size(ini.Read(Secname, "TabControl1size", "711,228").Split(",")(0), ini.Read(Secname, "TabControl1size", "711,228").Split(",")(1))
TabControl2.Location = New Point(ini.Read(Secname, "TabControl2loc", "265,1").Split(",")(0), ini.Read(Secname, "TabControl2loc", "265,1").Split(",")(1))
GroupBox3.Location = New Point(ini.Read(Secname, "GroupBox3loc", "513,6").Split(",")(0), ini.Read(Secname, "GroupBox3loc", "513,6").Split(",")(1))
GroupBox3.Size = New Size(ini.Read(Secname, "GroupBox3size", "184,78").Split(",")(0), ini.Read(Secname, "GroupBox3size", "184,78").Split(",")(1))
GroupBox2.Location = New Point(ini.Read(Secname, "GroupBox2loc", "262,6").Split(",")(0), ini.Read(Secname, "GroupBox2loc", "262,6").Split(",")(1))
GroupBox2.Size = New Size(ini.Read(Secname, "GroupBox2size", "245,192").Split(",")(0), ini.Read(Secname, "GroupBox2size", "245,192").Split(",")(1))
cmb_style.Location = New Point(ini.Read(Secname, "cmb_styleloc", "11,18").Split(",")(0), ini.Read(Secname, "cmb_styleloc", "11,18").Split(",")(1))
cmb_style.Size = New Size(ini.Read(Secname, "cmb_stylesize", "245,139").Split(",")(0), ini.Read(Secname, "cmb_stylesize", "245,139").Split(",")(1))
ToolStrip2.Location = New Point(ini.Read(Secname, "ToolStrip2loc", "3,159").Split(",")(0), ini.Read(Secname, "ToolStrip2loc", "3,159").Split(",")(1))
Me.Size = New Size(ini.Read(Secname, "mesize", "730,643").Split(",")(0), ini.Read(Secname, "mesize", "730,643").Split(",")(1))
End If
End If
End Sub
Private Sub cmb_landscape_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb_landscape.SelectedIndexChanged
Me.SaveReadLayOut(True)
End Sub
Private Sub GetPrintersName()
WLog2(Auto_Log, "GetPrinterName()", "\지중(케이블)순차로그.txt")
Dim value As PrinterSettings.StringCollection = System.Drawing.Printing.PrinterSettings.InstalledPrinters
Me.combobox5.Items.Clear()
For i As Integer = 0 To value.Count - 1
Me.combobox5.Items.Add(value(i))
Next
End Sub
Private Sub printform_MouseWheel(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseWheel
If e.Delta < 0 Then
'If Me.BindingNavigatorPositionItem.Text < Me.BindingNavigatorCountItem.Text Then
Me.BindingNavigatorMoveNextItem.PerformClick()
Me.BindingNavigatorPositionItem.Focus()
'End If
Else
If Me.BindingNavigatorPositionItem.Text > 0 Then
Me.BindingNavigatorMovePreviousItem.PerformClick()
Me.BindingNavigatorPositionItem.Focus()
End If
End If
End Sub
Private Sub ToolStripButton4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_chkpattern.Click
If Me.bt_chkpattern.Text = "중지(&S)" Then
' If BackWork.IsAlive Then BackWork.Abort()
Me.bt_chkpattern.Text = "시작(&S)"
Else
Me.bt_chkpattern.Text = "중지(&S)"
'BackWork = New Threading.Thread(AddressOf NPartternCheck)
'BackWork.Start()
NPartternCheck()
End If
End Sub
Private Sub Button3_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
'Me.SetFont()
If Not IsNumeric(Me.tb_space.Text) Then
MsgBox("숫자만 입력하세요", MsgBoxStyle.Critical, "확인")
Return
End If
For Each A As Control In SelCon
CType(A, MyControlOLEDBv2.MyLabel).공백 = CInt(Me.tb_space.Text)
'Me.UpdateFontSize(Me.tb_space.Text, A)
Next
Me.preview_window()
End Sub
Private Sub tb_picfile_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tb_picfile.TextChanged
If Not IO.File.Exists(Me.tb_picfile.Text) Then
Me.erp.SetError(Me.tb_picfile, "그림파일이 존재하지 않습니다")
Else
Me.erp.SetError(Me.tb_picfile, "")
End If
End Sub
Private Sub bt_canvasL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_canvasL.Click
Me.PictureBox1.Width -= 2
End Sub
Private Sub bt_canvasR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_canvasR.Click
Me.PictureBox1.Width += 2
End Sub
Private Sub bt_canvasU_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_canvasU.Click
Me.PictureBox1.Height -= 2
End Sub
Private Sub bt_canvasD_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_canvasD.Click
Me.PictureBox1.Height += 2
End Sub
Private Sub tb_space_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
If e.KeyCode = Keys.Enter Then Me.Button3.PerformClick()
End Sub
Private Sub preview_window() '//미리보기화면을 생성합니다.
'Dim fmt As New StringFormat(StringFormatFlags.LineLimit)
Dim MyFont As Font
Dim NewFontSize As Int16 = 10
Dim dummy As Boolean = False '//이값이 true 이면 출력시 변위를 지정해서 출력한다.
Dim BackScr As New Bitmap(Me.PictureBox1.Width, Me.PictureBox1.Height, Me.PictureBox1.CreateGraphics)
Dim Ga As Graphics = Graphics.FromImage(BackScr)
Dim Brush As SolidBrush
Dim obj As MyControlOLEDBv2.MyLabel
'//쉐이프를 먼저 그린다.
If Me.chk_draw.Checked Then
'//라인을 그린다.
For Each Rect As S_Line In Draw_Line
Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth)
Ga.DrawLine(Pen, Rect.X, Rect.Y, Rect.X2, Rect.Y2)
Next
'//박스를 그린다.
For Each Rect As S_Box In Draw_Box
Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth)
Ga.DrawRectangle(Pen, Rect.X, Rect.Y, Rect.Width, Rect.Height)
Next
'//원을 그린다.
For Each Rect As S_Circle In Draw_Circle
Dim Pen As New Drawing.Pen(Rect.PenColor, Rect.PenWidth)
Ga.DrawEllipse(Pen, Rect.X, Rect.Y, Rect.Width, Rect.Height)
Next
If 관리구 <> "" Then
Try
'// qr코드를 그린다
For Each Rect As S_QRCode In Draw_QRcode
'Dim scale As Int16
Dim version As Int16
Dim image As Image
Dim data As String
Dim errorCorrect As String
Dim qrCodeEncoder1 As New QRCodeEncoder()
Dim encoding As String
encoding = cboEncoding.Text
If encoding = "3" Then
qrCodeEncoder1.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.BYTE
ElseIf encoding = "1" Then
qrCodeEncoder1.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.ALPHA_NUMERIC
ElseIf encoding = "2" Then
qrCodeEncoder1.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.NUMERIC
' Try
'scale = Convert.ToInt16(txtSize.Text)
'qrCodeEncoder.QRCodeScale = scale
'Catch ex As Exception
' MessageBox.Show("Invalid size!")
' End Try
Try
version = Convert.ToInt16(cboVersion.Text)
qrCodeEncoder1.QRCodeVersion = version
Catch ex As Exception
MessageBox.Show("Invaild Version!")
End Try
End If
errorCorrect = cboCorrectionLevel.Text
If errorCorrect = "1" Then
qrCodeEncoder1.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.L
ElseIf errorCorrect = "2" Then
qrCodeEncoder1.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.M
ElseIf errorCorrect = "3" Then
qrCodeEncoder1.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.Q
ElseIf errorCorrect = "4" Then
qrCodeEncoder1.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.H
End If
data = 관리구 'data설정 임시
If lbQrBg.BackColor <> Drawing.Color.White Then qrCodeEncoder1.QRCodeBackgroundColor = lbQrBg.BackColor
If lbQrFG.BackColor <> Drawing.Color.Black Then qrCodeEncoder1.QRCodeForegroundColor = lbQrFG.BackColor
image = qrCodeEncoder1.Encode(data, Ga.DpiX, Ga.DpiY)
If Rect.Width = 0 OrElse Rect.Height = 0 Then
'Ga.DrawImage(image, Rect.X + MyProperty_Paper.출력여백X, Rect.Y + MyProperty_Paper.출력여백Y)
Ga.DrawImage(image, Rect.X, Rect.Y)
Else
'Ga.DrawImage(image, Rect.X + MyProperty_Paper.출력여백X, Rect.Y + MyProperty_Paper.출력여백Y, Rect.Width, Rect.Height)
Ga.DrawImage(image, Rect.X, Rect.Y, Rect.Width, Rect.Height)
End If
Next
Catch ex As Exception
MessageBox.Show(ex.ToString())
End Try
End If
End If
If Me.tb_pagerepeat.Text = "" Or Me.tb_pagerepeat.Text < 1 Then Me.tb_pagerepeat.Text = "0"
For pi As Short = 0 To Me.tb_pagerepeat.Text - 1 '//페이지당 연속출력할 횟수
For i As Integer = 0 To Me.AllLabels.GetUpperBound(0) '//모든 개체들에 대해서 인쇄를 설정한다.
obj = Me.AllLabels(i).ctl
If obj.Visible AndAlso obj.MyText <> "" Then '//화면에 보이는것만 한다.
For rcnt As Short = 0 To obj.Repeat '//반복기능추가한다
NewFontSize = obj.MyFont.Size + Me.tb_myfontsize.Text
If NewFontSize < 0 Then NewFontSize = 0
If pi > 0 Then '//연속출력에의한 샊깔변경
Brush = New SolidBrush(Drawing.Color.DarkKhaki) '//전경색으로 브러쉬를 만든다.
Else
If rcnt > 0 Then '//더미출력에의한 색깔변경
Brush = New SolidBrush(Drawing.Color.LightGray) '//전경색으로 브러쉬를 만든다.
Else
Brush = New SolidBrush(obj.MyForeColor) '//전경색으로 브러쉬를 만든다.
End If
End If
MyFont = New Font(obj.MyFont.FontFamily, NewFontSize, obj.MyFont.Style)
If obj.장평 = 100 AndAlso obj.장높이 = 100 Then '//장평미사용 문자열 처리
Ga.DrawString(obj.최종문자, MyFont, Brush, (obj.Left + Me.tb_secX.Text * pi + obj.RepeatX * rcnt), (obj.Top + Me.tb_secY.Text * pi + obj.RepeatY * rcnt))
Else '//장평사용 이미지 처리
Dim NewX, Newy As Integer
Dim SrcDpix, SrcDPiY As Single
'MsgBox(Tobj.장높이)
SrcDpix = obj.CreateGraphics.DpiX
SrcDPiY = obj.CreateGraphics.DpiY
NewX = obj.GetSize(MyFont).Width * (obj.장평 / 100) * (Ga.DpiX / SrcDpix)
Newy = obj.GetSize(MyFont).Height * (obj.장높이 / 100) * (Ga.DpiY / SrcDPiY)
Dim BMP As New Bitmap(NewX, Newy, Ga)
Dim G As Graphics = Graphics.FromImage(BMP)
G.ResetTransform()
G.ScaleTransform((obj.장평 / 100), (obj.장높이 / 100))
If rcnt > 0 Then
G.DrawString(obj.최종문자, MyFont, Brushes.LightGray, 0, 0)
G.Dispose()
Ga.DrawImage(BMP, New Point(obj.Left + Me.tb_secX.Text * pi + obj.RepeatX * rcnt, obj.Top + Me.tb_secY.Text * pi + obj.RepeatY * rcnt)) ', CInt(GetSize.Width * (v장평 / 100)), GetSize.Height)
Else
G.DrawString(obj.최종문자, MyFont, Brush, 0, 0)
G.Dispose()
Ga.DrawImage(BMP, New Point(obj.Left + Me.tb_secX.Text * pi, obj.Top + Me.tb_secY.Text * pi)) ', CInt(GetSize.Width * (v장평 / 100)), GetSize.Height)
End If
End If
Next
End If
Next
Next
Ga.Dispose()
Me.PictureBox1.Image = BackScr
End Sub
Private Sub cb_bold_CheckedChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs)
SetFont()
End Sub
Private Sub Button1_Click_2(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If SelCon Is Nothing Then Return
Dim B As New FontDialog
B.Font = CType(SelCon(0), MyControlOLEDBv2.MyLabel).MyFont
If B.ShowDialog() <> System.Windows.Forms.DialogResult.OK Then Return
For Each a As MyControlOLEDBv2.MyLabel In SelCon
a.MyFont = B.Font
Next
Me.ViewProperty(CType(SelCon(0), MyControlOLEDBv2.MyLabel))
Me.preview_window()
End Sub
Private Sub TextBox3_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_left.KeyUp
If e.KeyCode = Keys.Enter Then Me.Button5.PerformClick()
End Sub
Private Sub TextBox4_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_top.KeyUp
If e.KeyCode = Keys.Enter Then Me.Button9.PerformClick()
End Sub
Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
For Each A As Control In SelCon
A.Top = IIf(IsNumeric(Me.tb_top.Text), Val(Me.tb_top.Text), A.Top)
Next
Me.preview_window()
End Sub
Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click
If Not IsNumeric(Me.tb_wordwidth.Text) Then Return
For Each A As Control In SelCon
'Me.UpdateFontWidth(CType(A, MyControlOLEDBv2.MyLabel).장평 - Val(Me.tb_pixelsize.Text))
' MsgBox(CType(A, MyControlOLEDBv2.MyLabel).설명)
CType(A, MyControlOLEDBv2.MyLabel).장평 = CShort(Me.tb_wordwidth.Text)
Next
ViewProperty(SelCon(0))
Me.preview_window()
End Sub
Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click
If Not IsNumeric(Me.tb_wordheight.Text) Then Return
For Each A As Control In SelCon
'Me.UpdateFontWidth(CType(A, MyControlOLEDBv2.MyLabel).장평 - Val(Me.tb_pixelsize.Text))
CType(A, MyControlOLEDBv2.MyLabel).장높이 = CShort(Me.tb_wordheight.Text)
Next
ViewProperty(SelCon(0))
Me.preview_window()
End Sub
Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button12.Click
If Not IsNumeric(Me.tb_fsize.Text) Then
MsgBox("숫자만 입력하세요", MsgBoxStyle.Critical, "확인")
Return
End If
For Each A As Control In SelCon
Me.UpdateFontSize(Me.tb_fsize.Text, A)
Next
Me.preview_window()
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
For Each A As Control In SelCon
A.Left = IIf(IsNumeric(Me.tb_left.Text), Val(Me.tb_left.Text), A.Left)
Next
Me.preview_window()
End Sub
Private Sub TextBox5_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_wordwidth.KeyUp
If e.KeyCode = Keys.Enter Then Me.Button10.PerformClick()
End Sub
Private Sub TextBox6_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_wordheight.KeyUp
If e.KeyCode = Keys.Enter Then Me.Button11.PerformClick()
End Sub
Private Sub TextBox7_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_fsize.KeyUp
If e.KeyCode = Keys.Enter Then Me.Button12.PerformClick()
End Sub
Private Sub TextBox8_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_space.KeyUp
If e.KeyCode = Keys.Enter Then Me.Button3.PerformClick()
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
If SelCon Is Nothing Then Return
Dim B As New FontDialog
B.Font = CType(SelCon(0), MyControlOLEDBv2.MyLabel).MyFont
For Each a As MyControlOLEDBv2.MyLabel In SelCon
a.MyFont = B.Font
Next
Me.ViewProperty(CType(SelCon(0), MyControlOLEDBv2.MyLabel))
Me.preview_window()
End Sub
Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Me.preview_window()
End Sub
Private Sub BindingSource1_PositionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles BindingSource1.PositionChanged
'MsgBox("BindingSource1_PositionChanged=" & Now.ToString & "current=" & Me.BindingNavigatorPositionItem.Text & "mnoview=" & NoView)
Debug.Print("BindingSource1_PositionChanged : " & Me.BindingSource1.Position)
Debug.Print("스크롤바값 범위값 " & Me.VScrollBar1.Minimum & "/" & Me.VScrollBar1.Maximum)
If Me.BindingSource1.Position >= 0 Then Me.VScrollBar1.Value = Me.BindingSource1.Position
If Me.NoView Then
Me.NoView = False
Else
Me.GeTviewData(Me.BindingNavigatorPositionItem.Text - 1, True)
End If
End Sub
Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
Me.GeTviewData(Me.BindingSource1.Position, True)
End Sub
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
'//고관리구 5번 저장
Dim msg As New System.Text.StringBuilder
msg.AppendLine("관리구5번 영문자(" & Me.S관리구(4).MyText & " )문자에대한 스타일을 저장합니다")
msg.AppendLine()
msg.AppendLine("저장후 관리구5번에 동일한 영문자가 올경우에 저장된 내용이 반영됩니다")
msg.AppendLine("------------------")
msg.AppendLine("글꼴 = " & Me.S관리구(4).MyFont.ToString)
msg.AppendLine("너비 = " & Me.S관리구(4).장평)
msg.AppendLine("높이 = " & Me.S관리구(4).장높이)
msg.AppendLine("좌표 = " & Me.S관리구(4).Location.ToString)
msg.AppendLine("------------------")
msg.AppendLine(" 저장하시겠습니까?")
If MsgBox(msg.ToString, MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "저장확인") <> MsgBoxResult.Ok Then
NOTICE("취소되었습니다", Me.lb_msg)
Return
End If
'이건 길이패턴 저장하는 함수다.
'MsgBox(drstyle.File)
Dim Arinini As New MyINI2(drstyle.File)
Dim TOBJ As MyControlOLEDBv2.MyLabel = Me.S관리구(4)
Dim Pname As String = "CNUMPATTERNI" & TOBJ.MyText '//5번이 W 일때는 cnumpatternIw 를 찾게된다.
Arinini.Write(Pname, "DESC", "영문자 특수저장(" & TOBJ.MyText & ")")
Arinini.Write(Pname, TOBJ.Name & "pos", TOBJ.Left & "," & TOBJ.Top & "," & TOBJ.Width & "," & TOBJ.Height)
Arinini.Write(Pname, TOBJ.Name & "font", TOBJ.MyFont.Name & "," & TOBJ.MyFont.Size & "," & TOBJ.MyFont.Underline & "," & TOBJ.MyFont.Bold & "," & TOBJ.MyFont.Italic & "," & TOBJ.장평 & "," & TOBJ.장높이)
Arinini.Write(Pname, TOBJ.Name & "visible", TOBJ.Visible)
Arinini.Write(Pname, TOBJ.Name & "space", TOBJ.공백)
NOTICE("관리구5번 의 영문자 (" & TOBJ.MyText & ") 상태를 저장하였습니다", Me.lb_msg)
데이터테이블갱신()
End Sub
Private Sub VScrollBar1_Scroll(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles VScrollBar1.Scroll
Debug.Print("Scroll Old:" & e.OldValue & "/ New :" & e.NewValue & "/ Current : " & Me.VScrollBar1.Value)
Debug.Print("스크롤바값 범위값 " & Me.VScrollBar1.Minimum & "/" & Me.VScrollBar1.Maximum)
If e.NewValue > 0 Then
Me.BindingSource1.Position = e.NewValue
Else
Debug.Print("스크롤바value값이 0보다 작습니다. 소스의 위치를 0으로 설정합니다")
Me.BindingSource1.Position = 0
End If
End Sub
Private Sub PictureBox1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseClick
Dim Tobj As MyControlOLEDBv2.MyLabel
Dim selitem As New ArrayList
Tobj = Nothing
For i As Integer = 0 To Me.AllLabels.GetUpperBound(0)
If Me.AllLabels(i).ctl.Visible AndAlso Me.AllLabels(i).ctl.MyText <> "" AndAlso _
((e.X >= Me.AllLabels(i).ctl.Left) And e.X <= (Me.AllLabels(i).ctl.Left + Me.AllLabels(i).ctl.GetSize.Width)) _
AndAlso ((e.Y >= Me.AllLabels(i).ctl.Top) AndAlso (e.Y <= (Me.AllLabels(i).ctl.Top + Me.AllLabels(i).ctl.GetSize.Height))) Then
Tobj = Me.AllLabels(i).ctl
selitem.Add(Me.AllLabels(i).ctl)
'Exit For
End If
Next
If Tobj Is Nothing Then Return '//선택된게 없으면 날린다
'If Me.chk_multisel.Checked Then '//다중목록에서 선택시가 체크되어있으면 목록을 표시해준다.
If selitem.Count > 1 Then
Dim A As New selitem
For si As Short = 1 To selitem.Count
A.ListBox1.Items.Add(CType(selitem.Item(si - 1), MyControlOLEDBv2.MyLabel).설명)
Next
If A.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
Tobj = selitem.Item(A.ListBox1.SelectedIndex)
Else '//캔슬시에는 첫번째 아템으로 한다.
Tobj = selitem.Item(0)
End If
End If
'End If
Dim Exist As Boolean = False '//선택개체에 존재여부
If SelCon Is Nothing Then
SelCon.Add(Tobj)
Else
If e.Button = System.Windows.Forms.MouseButtons.Right Then
For Each obj As MyControlOLEDBv2.MyLabel In SelCon
If obj.Name = Tobj.Name Then '//삭제된다.
obj.MyForeColor = Drawing.Color.Black
SelCon.Remove(obj)
Exist = True
Exit For
End If
Next
If Exist = False Then
SelCon.Add(Tobj)
Tobj.MyForeColor = Drawing.Color.Tomato
End If
ElseIf e.Button = System.Windows.Forms.MouseButtons.Left Then '왼쪽클리이면 지우고 다시 셋팅
For Each SC As MyControlOLEDBv2.MyLabel In SelCon
SC.MyForeColor = Drawing.Color.Black
Next
SelCon.Clear()
SelCon.Add(Tobj)
Tobj.MyForeColor = Drawing.Color.DodgerBlue
If My.Computer.Keyboard.CtrlKeyDown Then '//컨트롤이 눌러졋으면 해당 그룹을 전부 찾는다.
'MsgBox(Tobj.Name)
SelCon.Clear()
For z As Short = 0 To Me.AllLabels.GetUpperBound(0)
If Me.AllLabels(z).ctl.DIV = Tobj.DIV And Me.AllLabels(z).ctl.TextValue.Trim <> "" Then
Me.AllLabels(z).ctl.MyForeColor = Drawing.Color.Blue
SelCon.Add(Me.AllLabels(z).ctl)
End If
Next
End If
Else
Me.Button1.PerformClick()
End If
End If
'onlyOne = sender
'CType(sender, MyControlOLEDBv2.MyLabel).
Me.cmb_controls.Text = Tobj.설명
ViewProperty(Tobj)
'For Each A As MyControlOLEDBv2.MyLabel In SelCon
' A.MyForeColor = Color.DodgerBlue
' Next
Me.tb_left.Focus()
Me.preview_window()
End Sub
Private Sub PictureBox1_MouseDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDoubleClick
Dim Tobj As MyControlOLEDBv2.MyLabel
Tobj = Nothing
For i As Integer = 0 To Me.AllLabels.GetUpperBound(0)
If Me.AllLabels(i).ctl.Visible AndAlso Me.AllLabels(i).ctl.MyText <> "" AndAlso _
((e.X >= Me.AllLabels(i).ctl.Left) And e.X <= (Me.AllLabels(i).ctl.Left + Me.AllLabels(i).ctl.GetSize.Width)) _
AndAlso ((e.Y >= Me.AllLabels(i).ctl.Top) AndAlso (e.Y <= (Me.AllLabels(i).ctl.Top + Me.AllLabels(i).ctl.GetSize.Height))) Then
Tobj = Me.AllLabels(i).ctl
Exit For
End If
Next
If Tobj Is Nothing Then Return '//선택된게 없으면 날린다
Dim Msg As New System.Text.StringBuilder("변경할 값을 입력하세요")
Msg.AppendLine("줄바꿈을하려면 \n 을 입력하세요")
Msg.AppendLine("예) 세로로 12를 출력하려면 1\n2 을 입력하세요")
Msg.AppendLine()
Msg.AppendLine("변경한 값은 현재페이지에만 적용됩니다")
Dim Val As String = InputBox(Msg.ToString, "변경", Tobj.MyText)
If Val = "" Then Return
Val = Val.Replace("\n", vbCrLf)
Tobj.MyText = Val
Me.preview_window()
End Sub
Private Sub cmb_controls_SelectionChangeCommitted(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmb_controls.SelectionChangeCommitted
For Each A As MyControlOLEDBv2.MyLabel In Me.SelCon
A.MyForeColor = Drawing.Color.Black
Next
SelCon.Clear()
SelCon.Add(AllLabels(Me.cmb_controls.SelectedIndex).ctl)
AllLabels(Me.cmb_controls.SelectedIndex).ctl.MyForeColor = Drawing.Color.DodgerBlue
ViewProperty(AllLabels(Me.cmb_controls.SelectedIndex).ctl)
Me.preview_window()
End Sub
Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click
Me.Close()
End Sub
Private Sub 문자패턴연습(ByVal srcstr As String, ByVal pname As String, ByVal log As String, ByVal S라벨() As MyControlOLEDBv2.MyLabel)
Dim Wlen As Short = srcstr.Length : If Wlen <= 0 Then Return '//없는 글귀가 왓을때 턴해버린다.
Dim SepPos As Short = srcstr.IndexOf(";")
Dim DR() As DataRow
Dim CTLPOS() As String
Dim CTLFONT() As String
Dim CTLVISIBLE As Boolean
DR = dtpattern.Select("NAME = '" & pname & "DESC'")
If DR.GetUpperBound(0) = 0 Then '//길이패턴이 있으면
WLog2(Auto_Log, "문자패턴 검색 길이=" & Wlen & " 구분자위치=" & SepPos & " 미들네임=" & pname, log)
For Each C As MyControlOLEDBv2.MyLabel In S라벨
Try
DR = dtpattern.Select("NAME = '" & pname & C.Name & "POS'")
If DR.GetUpperBound(0) = 0 Then
CTLPOS = DR(0)(1).ToString.Split(",")
C.Location = New Point(CTLPOS(0), CTLPOS(1))
C.Size = New Size(CTLPOS(2), CTLPOS(3))
End If
DR = dtpattern.Select("NAME = '" & pname & C.Name & "FONT'")
If DR.GetUpperBound(0) = 0 Then
CTLFONT = DR(0)(1).ToString.Split(",")
C.MyFont = New Font(CTLFONT(0), CTLFONT(1), IIf(CTLFONT(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point)
C.장평 = CTLFONT(5)
C.장높이 = CTLFONT(6)
End If
DR = dtpattern.Select("NAME = '" & pname & C.Name & "VISIBLE'")
If DR.GetUpperBound(0) = 0 Then
CTLVISIBLE = DR(0)(1).ToString
C.Visible = CType(CTLVISIBLE, Boolean)
End If
DR = dtpattern.Select("NAME = '" & pname & C.Name & "SPACE'")
If DR.GetUpperBound(0) = 0 Then
C.공백 = DR(0)(1).ToString
End If
'//반복정보확인 Arinini.Write(Pname, TOBJ.Name & "repeat", TOBJ.Repeat & "," & TOBJ.RepeatX & "," & TOBJ.RepeatY) '//반복출력정보저장
AddLog(Auto_Log, "반복문자셋트 : " & pname & C.Name & "REPEAT" & " 를 검색합니다")
DR = dtpattern.Select("NAME = '" & pname & C.Name & "REPEAT'")
If DR.GetUpperBound(0) = 0 Then
AddLog(Auto_Log, "해당반복문자를 찾았습니다")
CTLFONT = DR(0)(1).ToString.Split(",")
AddLog(Auto_Log, "해당반복문자를 콤마로 쪼개어서 CTLFONT 배열에 저장하였습니다.")
C.Repeat = CTLFONT(0)
AddLog(Auto_Log, "해당반복문자중 0번째위치값을 적용")
C.RepeatX = CTLFONT(1)
AddLog(Auto_Log, "해당반복문자중 1번째위치값을 적용")
C.RepeatY = CTLFONT(2)
AddLog(Auto_Log, "해당반복문자중 2번째위치값을 적용")
'C.MyFont = New Font(CTLFONT(0), CTLFONT(1), IIf(CTLFONT(3).ToUpper = "TRUE", FontStyle.Bold, FontStyle.Regular), GraphicsUnit.Point)
' C.장평 = CTLFONT(5)
' C.장높이 = CTLFONT(6)
Else
AddLog(Auto_Log, "해당반복문자를 찾지못했습니다.")
End If
C.Tag = "C"
Catch ex As Exception
WLog2(Auto_Log, "문자패턴오류 길이=" & Wlen & " Message=" & ex.Message.ToString, log)
End Try
Next
Else
WLog2(Auto_Log, "문자패턴불일치 길이=" & Wlen & " 문자열=" & srcstr, log)
Me.LOAD_STYLE(S라벨(0).DIV)
End If
End Sub
Private Sub cmb_style_SelectionChangeCommitted(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmb_style.SelectionChangeCommitted
'//스타일을 직접 선택햇을때 기본idx값을 0 으로한다.
' MsgBox("스타일직접선택")
FirstIdx = 0
End Sub
Private Sub tb_ntype_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles tb_ntype.MouseEnter
Me.tb_ntype.Focus()
Me.tb_ntype.SelectAll()
End Sub
Private Sub ToolStripTextBox1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_ntype.KeyUp
If e.KeyCode = Keys.Enter Then
If Me.cmb_sep.SelectedIndex = 1 Then
NOTICE("분리상태에서는 번호지정이 불가능합니다", Drawing.Color.Red, Me.lb_msg)
Else
'번호형식지정(Me.tb_ntype.Text)
End If
Me.preview_window()
End If
End Sub
Private Sub ToolStripButton6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton6.Click
If MsgBox("현재 스타일(기본)을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.YesNo, "스타일저장") = MsgBoxResult.Yes Then
SAVE_STYLE()
Else
NOTICE("스타일(기존)저장이 취소되었습니다", Me.lb_msg)
End If
End Sub
Private Sub BindingNavigatorPositionItem_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles BindingNavigatorPositionItem.MouseEnter
Me.BindingNavigatorPositionItem.Focus()
Me.BindingNavigatorPositionItem.SelectAll()
End Sub
Private Sub PictureBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove
'Me.Text = e.X & "/" & e.Y
If My.Computer.Keyboard.CtrlKeyDown = True AndAlso My.Computer.Keyboard.AltKeyDown = True Then
'//선택된 컨트롤을 마우스위치로 이동한다.
If SelCon Is Nothing OrElse SelCon.Count < 1 Then Exit Sub
For Each sender1 As MyControlOLEDBv2.MyLabel In SelCon
sender1.Left = e.X - (sender1.Width / 2)
sender1.Top = e.Y + (sender1.Height / 2)
Next
Me.preview_window()
End If
End Sub
Private Sub ToolStripButton2_ButtonClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_print.ButtonClick
Me.Print()
End Sub
Private Sub bt_prnpreview_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_prnpreview.Click
Me.Print_Preview()
End Sub
Private Sub cm_styleedit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cm_styleedit.Click
StyleEdit.ListIndex = Me.cmb_style.SelectedIndex
StyleEdit.Path = Me.StyleDir
StyleEdit.Show()
End Sub
Private Sub Refresh_Drawlist()
'//;라인하고 박스를 읽어서 리스트박스에
Me.ListBox1.Items.Clear()
Dim I As Short = 0
For Each Rect As S_Line In Draw_Line
Me.ListBox1.Items.Add("선(" & Rect.X & "," & Rect.Y & "," & Rect.X2 & "," & Rect.Y2 & "):" & I)
I += 1
Next
I = 0
For Each Rect As S_Box In Draw_Box
Me.ListBox1.Items.Add("박스(" & Rect.X & "," & Rect.X & "," & Rect.Width & "," & Rect.Height & "):" & I)
I += 1
Next
I = 0
For Each Rect As S_Circle In Draw_Circle
Me.ListBox1.Items.Add("원(" & Rect.X & "," & Rect.X & "," & Rect.Width & "," & Rect.Height & "):" & I)
I += 1
Next
For Each Rect As S_QRCode In Draw_QRcode
Me.ListBox1.Items.Add("QR(" & Rect.X & "," & Rect.Y & "," & Rect.Width & "," & Rect.Height & "):" & I)
I += 1
Next
I = 0
preview_window()
End Sub
Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button13.Click
'//선추가
Dim NewLine As New S_Line
NewLine.PenColor = Drawing.Color.Black
NewLine.PenWidth = 3
NewLine.X = Draw_Line.Count * 10
NewLine.Y = 10
NewLine.X2 = 100 + Draw_Line.Count * 10
NewLine.Y2 = NewLine.X2
Draw_Line.Add(NewLine)
Refresh_Drawlist()
End Sub
Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click
'//선추가
Dim NewLine As New S_Box
NewLine.PenColor = Drawing.Color.Black
NewLine.PenWidth = 3
NewLine.X = Draw_Box.Count * 10
NewLine.Y = Draw_Box.Count * 10
NewLine.Width = 100 + Draw_Box.Count * 10
NewLine.Height = NewLine.Width
Draw_Box.Add(NewLine)
Refresh_Drawlist()
End Sub
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
If Me.ListBox1.SelectedIndex < 0 Then Return
Select Case Me.ListBox1.Text.Substring(0, 1)
Case ""
Dim Line As S_Line = Draw_Line(Me.ListBox1.Text.Split(":")(1))
Me.bt_pencolor.BackColor = Line.PenColor
Me.tb_pensize.Text = Line.PenWidth
Me.tb_dx.Text = Line.X
Me.tb_dy.Text = Line.Y
Me.tb_dw.Text = Line.X2
Me.tb_dh.Text = Line.Y2
Case ""
Dim Line As S_Box = Draw_Box(Me.ListBox1.Text.Split(":")(1))
Me.bt_pencolor.BackColor = Line.PenColor
Me.tb_pensize.Text = Line.PenWidth
Me.tb_dx.Text = Line.X
Me.tb_dy.Text = Line.Y
Me.tb_dw.Text = Line.Width
Me.tb_dh.Text = Line.Height
Case ""
Dim Line As S_Circle = Draw_Circle(Me.ListBox1.Text.Split(":")(1))
Me.bt_pencolor.BackColor = Line.PenColor
Me.tb_pensize.Text = Line.PenWidth
Me.tb_dx.Text = Line.X
Me.tb_dy.Text = Line.Y
Me.tb_dw.Text = Line.Width
Me.tb_dh.Text = Line.Height
Case "Q"
Dim Line As S_QRCode = Draw_QRcode(Me.ListBox1.Text.Split(":")(1))
Me.tb_dx.Text = Line.X
Me.tb_dy.Text = Line.Y
Me.tb_dw.Text = Line.Width
Me.tb_dh.Text = Line.Height
End Select
End Sub
Private Sub tb_pensize_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_pensize.KeyDown, tb_dx.KeyDown, tb_dy.KeyDown, tb_dw.KeyDown, tb_dh.KeyDown
If Me.ListBox1.SelectedIndex < 0 Then Return
Dim SI As Short = Me.ListBox1.SelectedIndex
If e.KeyCode = Keys.Enter Then
'//새로만들어서 저장한다.
Set_NewDraw()
Me.Refresh_Drawlist()
Me.ListBox1.SelectedIndex = SI
End If
End Sub
Private Sub Set_NewDraw()
Select Case Me.ListBox1.Text.Substring(0, 1)
Case ""
Dim Line As New S_Line
Line.PenColor = Me.bt_pencolor.BackColor
Line.PenWidth = Me.tb_pensize.Text
Line.X = Me.tb_dx.Text
Line.Y = Me.tb_dy.Text
Line.X2 = Me.tb_dw.Text
Line.Y2 = Me.tb_dh.Text
Draw_Line(Me.ListBox1.Text.Split(":")(1)) = Line
'MsgBox("선재구성")
Case ""
Dim Line As New S_Box
Line.PenColor = Me.bt_pencolor.BackColor
Line.PenWidth = Me.tb_pensize.Text
Line.X = Me.tb_dx.Text
Line.Y = Me.tb_dy.Text
Line.Width = Me.tb_dw.Text
Line.Height = Me.tb_dh.Text
Draw_Box(Me.ListBox1.Text.Split(":")(1)) = Line
'MsgBox("박스재구성")
Case ""
Dim Line As New S_Circle
Line.PenColor = Me.bt_pencolor.BackColor
Line.PenWidth = Me.tb_pensize.Text
Line.X = Me.tb_dx.Text
Line.Y = Me.tb_dy.Text
Line.Width = Me.tb_dw.Text
Line.Height = Me.tb_dh.Text
Draw_Circle(Me.ListBox1.Text.Split(":")(1)) = Line
'MsgBox("박스재구성")
Case "Q"
Dim Line As New S_QRCode
Line.X = Me.tb_dx.Text
Line.Y = Me.tb_dy.Text
Line.Width = Me.tb_dw.Text
Line.Height = Me.tb_dh.Text
Draw_QRcode(Me.ListBox1.Text.Split(":")(1)) = Line
End Select
End Sub
Private Sub bt_pencolor_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_pencolor.Click
Dim CD As New ColorDialog
CD.Color = Me.bt_pencolor.BackColor
If CD.ShowDialog <> System.Windows.Forms.DialogResult.OK Then Return
Me.bt_pencolor.BackColor = CD.Color
Set_NewDraw()
End Sub
Private Sub SaveDrawData(ByVal read As Boolean) '//현재 화면구성을 가로/세로 결정합니다.
'//ini파일에저장한다. 섹션명은 pagetype0 ,pagetyp1 0은 세로 1은 가로다
Dim ini As New MyINI2(drstyle.File)
Dim bname As String = "DrawBox"
Dim lname As String = "DrawLine"
Dim cname As String = "DrawCircle"
Dim qname As String = "DrawQRcode"
Dim bcnt, lcnt, ccnt, qcnt As Short
If read = False Then
ini.Write(bname, "Count", Draw_Box.Count)
For i As Short = 1 To Draw_Box.Count '//모두돌아서 저장한다.
Dim L As S_Box = Draw_Box(i - 1)
ini.Write(bname, "box" & i & "pencolor", L.PenColor.ToArgb)
ini.Write(bname, "box" & i & "pensize", L.PenWidth)
ini.Write(bname, "box" & i & "x", L.X)
ini.Write(bname, "box" & i & "y", L.Y)
ini.Write(bname, "box" & i & "x2", L.Width)
ini.Write(bname, "box" & i & "y2", L.Height)
Next
ini.Write(cname, "Count", Draw_Circle.Count)
For i As Short = 1 To Draw_Circle.Count '//모두돌아서 저장한다.
Dim L As S_Circle = Draw_Circle(i - 1)
ini.Write(cname, "Circle" & i & "pencolor", L.PenColor.ToArgb)
ini.Write(cname, "Circle" & i & "pensize", L.PenWidth)
ini.Write(cname, "Circle" & i & "x", L.X)
ini.Write(cname, "Circle" & i & "y", L.Y)
ini.Write(cname, "Circle" & i & "x2", L.Width)
ini.Write(cname, "Circle" & i & "y2", L.Height)
Next
ini.Write(lname, "Count", Draw_Line.Count)
For i As Short = 1 To Draw_Line.Count '//모두돌아서 저장한다.
Dim L As S_Line = Draw_Line(i - 1)
ini.Write(lname, "line" & i & "pencolor", L.PenColor.ToArgb)
ini.Write(lname, "line" & i & "pensize", L.PenWidth)
ini.Write(lname, "line" & i & "x", L.X)
ini.Write(lname, "line" & i & "y", L.Y)
ini.Write(lname, "line" & i & "x2", L.X2)
ini.Write(lname, "line" & i & "y2", L.Y2)
Next
ini.Write(qname, "Count", Draw_QRcode.Count)
For i As Short = 1 To Draw_QRcode.Count '//모두돌아서 저장한다.
Dim L As S_QRCode = Draw_QRcode(i - 1)
'ini.Write(pname, "Image" & i & "pencolor", L.PenColor.ToArgb)
'ini.Write(pname, "Image" & i & "pensize", L.PenWidth)
ini.Write(qname, "qrcode" & i & "x", L.X)
ini.Write(qname, "qrcode" & i & "y", L.Y)
ini.Write(qname, "qrcode" & i & "x2", L.Width)
ini.Write(qname, "qrcode" & i & "y2", L.Height)
Next
Else '//여기는 읽는 부분
Draw_Box.Clear()
Draw_Line.Clear()
Draw_Circle.Clear()
Draw_QRcode.Clear()
bcnt = ini.Read(bname, "Count", 0)
For i As Short = 1 To bcnt '//모두돌아서 저장한다.
Dim L As New S_Box
L.PenColor = Drawing.Color.FromArgb(ini.Read(bname, "box" & i & "pencolor", 0))
L.PenWidth = ini.Read(bname, "box" & i & "pensize", 3)
L.X = ini.Read(bname, "box" & i & "x", 0)
L.Y = ini.Read(bname, "box" & i & "y", 0)
L.Width = ini.Read(bname, "box" & i & "x2", 10)
L.Height = ini.Read(bname, "box" & i & "y2", 10)
Draw_Box.Add(L)
Next
ccnt = ini.Read(cname, "Count", 0)
For i As Short = 1 To ccnt '//모두돌아서 저장한다.
Dim L As New S_Circle
L.PenColor = Drawing.Color.FromArgb(ini.Read(cname, "circle" & i & "pencolor", 0))
L.PenWidth = ini.Read(cname, "circle" & i & "pensize", 3)
L.X = ini.Read(cname, "circle" & i & "x", 0)
L.Y = ini.Read(cname, "circle" & i & "y", 0)
L.Width = ini.Read(cname, "circle" & i & "x2", 10)
L.Height = ini.Read(cname, "circle" & i & "y2", 10)
Draw_Circle.Add(L)
Next
lcnt = ini.Read(lname, "Count", 0)
For i As Short = 1 To lcnt '//모두돌아서 저장한다.
Dim L As New S_Line
L.PenColor = Drawing.Color.FromArgb(ini.Read(lname, "line" & i & "pencolor", 0))
L.PenWidth = ini.Read(lname, "line" & i & "pensize", 3)
L.X = ini.Read(lname, "line" & i & "x", 0)
L.Y = ini.Read(lname, "line" & i & "y", 0)
L.X2 = ini.Read(lname, "line" & i & "x2", 10)
L.Y2 = ini.Read(lname, "line" & i & "y2", 10)
Draw_Line.Add(L)
Next
qcnt = ini.Read(qname, "Count", 0)
For i As Short = 1 To qcnt '//모두돌아서 저장한다.
Dim L As New S_QRCode
'L.PenColor = Color.FromArgb(ini.Read(pname, "Circle" & i & "pencolor", 0))
'L.PenWidth = ini.Read(sname, "Circle" & i & "pensize", 3)
L.X = ini.Read(qname, "qrcode" & i & "x", 0)
L.Y = ini.Read(qname, "qrcode" & i & "y", 0)
L.Width = ini.Read(qname, "qrcode" & i & "x2", 10)
L.Height = ini.Read(qname, "qrcode" & i & "y2", 10)
Draw_QRcode.Add(L)
Next
Me.Refresh_Drawlist()
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Try
'//삭제
Select Case Me.ListBox1.Text.Substring(0, 1)
Case ""
Draw_Line.RemoveAt(Me.ListBox1.Text.Split(":")(1))
Case ""
Draw_Box.RemoveAt(Me.ListBox1.Text.Split(":")(1))
Case ""
Draw_Circle.RemoveAt(Me.ListBox1.Text.Split(":")(1))
Case "Q"
Draw_QRcode.RemoveAt(Me.ListBox1.Text.Split(":")(1))
End Select
Me.Refresh_Drawlist()
Catch ex As Exception
MessageBox.Show("선택 후 삭제가 가능합니다.", "확인", MessageBoxButtons.OK, MessageBoxIcon.Error)
ListBox1.Focus()
End Try
End Sub
Private Sub ToolStripMenuItem46_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem46.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS4번호1, Me.S4번호1.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS4번호1, Me.S4번호1, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub bt_pattern_kwan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_pattern_kwan.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S관리구, Me.관리구.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.S관리구, Me.관리구, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
End Sub
Private Sub bt_pattern_junsan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_pattern_junsan.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S전산번호, Me.전산번호.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.S전산번호, Me.전산번호, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.
End Sub
Private Sub bt_patterncom_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_patterncom.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S시공년월, Me.시공년월.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.S시공년월, Me.시공년월, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub bt_patternsikong_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_patternsikong.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S시공회사, Me.시공회사.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.S시공회사, Me.시공회사, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub bt_patterkongnum_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_patterkongnum.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.S공사번호, Me.공사번호.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.S공사번호, Me.공사번호, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub bt_patternkamdok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_patternkamdok.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S감독자, Me.감독자.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.S감독자, Me.감독자, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem38_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem38.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS0번호1, Me.S0번호1.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0번호1, Me.S0번호1, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem35_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem35.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS0번호2, Me.S0번호2.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0번호2, Me.S0번호2, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem32_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem32.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS0번호3, Me.S0번호3.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0번호3, Me.S0번호3, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem10.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS0번호4, Me.S0번호4.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0번호4, Me.S0번호4, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem2.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS0SW명, Me.S0SW명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0SW명, Me.S0SW명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub 번호1ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 번호1ToolStripMenuItem.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS0수용가, Me.S0수용가.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0수용가, Me.S0수용가, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem43_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem43.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS1번호1, Me.S1번호1.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1번호1, Me.S1번호1, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem58_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem58.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS1번호2, Me.S1번호2.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1번호2, Me.S1번호2, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem61_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem61.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS1번호3, Me.S1번호3.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1번호3, Me.S1번호3, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem64_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem64.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS1번호4, Me.S1번호4.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1번호4, Me.S1번호4, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem67_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem67.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS1SW명, Me.S1SW명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1SW명, Me.S1SW명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem70_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem70.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS1위치, Me.S1위치.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1위치, Me.S1위치, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem101_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem101.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS2번호1, Me.S2번호1.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2번호1, Me.S2번호1, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem104_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem104.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS2번호2, Me.S2번호2.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2번호2, Me.S2번호2, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem107_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem107.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS2번호3, Me.S2번호3.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2번호3, Me.S2번호3, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem110_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem110.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS2번호4, Me.S2번호4.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2번호4, Me.S2번호4, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem113_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem113.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS2SW명, Me.S2SW명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2SW명, Me.S2SW명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem116_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem116.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS2위치, Me.S2위치.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2위치, Me.S2위치, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem82_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem82.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS3번호1, Me.S3번호1.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS3번호1, Me.S3번호1, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem85_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem85.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS3번호2, Me.S3번호2.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS3번호2, Me.S3번호2, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem88_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem88.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS3번호3, Me.S3번호3.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS3번호3, Me.S3번호3, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem91_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem91.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS3번호4, Me.S3번호4.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS3번호4, Me.S3번호4, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem94_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem94.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS3SW명, Me.S3SW명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다
SAVE_PATTERNII(Me.SS3SW명, Me.S3SW명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem97_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem97.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS3위치, Me.S3위치.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다
SAVE_PATTERNII(Me.SS3위치, Me.S3위치, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem49_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem49.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS4번호2, Me.S4번호2.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다
SAVE_PATTERNII(Me.SS4번호2, Me.S4번호2, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem52_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem52.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS4번호3, Me.S4번호3.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다
SAVE_PATTERNII(Me.SS4번호3, Me.S4번호3, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem55_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem55.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS4번호4, Me.S4번호4.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다
SAVE_PATTERNII(Me.SS4번호4, Me.S4번호4, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem75_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem75.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS4SW명, Me.S4SW명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다
SAVE_PATTERNII(Me.SS4SW명, Me.S4SW명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem78_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem78.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS4위치, Me.S4위치.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다
SAVE_PATTERNII(Me.SS4위치, Me.S4위치, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ContextMenuStrip1_Opening(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles ContextMenuStrip1.Opening
If Me.cmb_style.Items.Count < 1 Then
Me.cm_styleedit.Enabled = False
End If
End Sub
Private Sub tb_rep_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_rep.KeyUp
If e.KeyCode = Keys.Enter Then
If Me.tb_rep.Text = "" OrElse Me.tb_rep Is vbNullString Then Me.tb_rep.Text = 0
For Each A As Control In SelCon
CType(A, MyLabel).Repeat = Me.tb_rep.Text
Next
Me.preview_window()
End If
End Sub
Private Sub tb_repx_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_repx.KeyUp
If e.KeyCode = Keys.Enter Then
If Me.tb_rep.Text = "" OrElse Me.tb_rep Is vbNullString Then Me.tb_rep.Text = 0
For Each A As Control In SelCon
CType(A, MyLabel).RepeatX = Me.tb_repx.Text
Next
Me.preview_window()
End If
End Sub
Private Sub tb_repy_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_repy.KeyUp
If e.KeyCode = Keys.Enter Then
If Me.tb_rep.Text = "" OrElse Me.tb_rep Is vbNullString Then Me.tb_rep.Text = 0
For Each A As Control In SelCon
CType(A, MyLabel).RepeatY = Me.tb_repy.Text
Next
Me.preview_window()
End If
End Sub
Private Sub TabControl1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TabControl1.SelectedIndexChanged
End Sub
Private Sub SSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SSToolStripMenuItem.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS0SS, Me.S0SS명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0SS, Me.S0SS명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub DLToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DLToolStripMenuItem.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS0DL, Me.S0DL명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0DL, Me.S0DL명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem1.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS1SS, Me.S1SS명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1SS, Me.S1SS명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem4.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS2SS, Me.S2SS명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2SS, Me.S2SS명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem6.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS3SS, Me.S3SS명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS3SS, Me.S3SS명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem8.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS4SS, Me.S4SS명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS4SS, Me.S4SS명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem3.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS1DL, Me.S1DL명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1DL, Me.S1DL명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem5.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.SS2DL, Me.S2DL명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2DL, Me.S2DL명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem7.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS3DL, Me.S3DL명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS3DL, Me.S3DL명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub ToolStripMenuItem9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem9.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
'SAVE_PATTERN(Me.SS4DL, Me.S4DL명.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS4DL, Me.S4DL명, "\변압기전산번호패턴.TXT") '//선로명의 패턴을 저장합니다.()
End Sub
Private Sub tb_pagerepeat_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_pagerepeat.KeyDown, tb_secX.KeyDown, tb_secY.KeyDown
If e.KeyCode = Keys.Enter Then
Me.preview_window()
End If
End Sub
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Dim NewLine As New S_Circle
NewLine.PenColor = Drawing.Color.Black
NewLine.PenWidth = 3
NewLine.X = 100
NewLine.Y = 100
NewLine.Width = 200
'NewLine.Height = 200
Draw_Circle.Add(NewLine)
Refresh_Drawlist()
End Sub
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
Dim NewLine As New S_QRCode
NewLine.X = 100
NewLine.Y = 100
NewLine.Width = 0
NewLine.Height = 0
Draw_QRcode.Add(NewLine)
Refresh_Drawlist()
End Sub
Private Sub 현재ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 현재ToolStripMenuItem.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S관리구, Me.관리구.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS0SW명, Me.S0SW명, "\구간(현재).TXT") '//선로명의 패턴을 저장합니다.
End Sub
Private Sub 상대1ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 상대1ToolStripMenuItem.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S관리구, Me.관리구.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS1SW명, Me.S1SW명, "\구간(상대1).TXT") '//선로명의 패턴을 저장합니다.
End Sub
Private Sub 상대2ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 상대2ToolStripMenuItem.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S관리구, Me.관리구.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS2SW명, Me.S2SW명, "\구간(상대2).TXT") '//선로명의 패턴을 저장합니다.
End Sub
Private Sub 상대3ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 상대3ToolStripMenuItem.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S관리구, Me.관리구.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS3SW명, Me.S3SW명, "\구간(상대3).TXT") '//선로명의 패턴을 저장합니다.
End Sub
Private Sub 상대4ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 상대4ToolStripMenuItem.Click
If MsgBox("패턴을 저장하시겠습니까?", MsgBoxStyle.Information + MsgBoxStyle.OkCancel, "확인") <> MsgBoxResult.Ok Then
NOTICE("패턴 저장이 취소되었습니다", Me.lb_msg)
Return
End If
' SAVE_PATTERN(Me.S관리구, Me.관리구.Length, "\변압기관리구패턴.TXT") '//선로명의 패턴을 저장합니다.
SAVE_PATTERNII(Me.SS4SW명, Me.S4SW명, "\구간(상대4).TXT") '//선로명의 패턴을 저장합니다.
End Sub
Private Sub LinkLabel1_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked
Dim a As New ColorDialog
a.Color = lbQrBg.BackColor
If a.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
lbQrBg.BackColor = a.Color
End If
End Sub
Private Sub LinkLabel2_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel2.LinkClicked
Dim a As New ColorDialog
a.Color = lbQrFG.BackColor
If a.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
lbQrFG.BackColor = a.Color
End If
End Sub
End Class