Imports System.IO Imports System.Net Public Class 合約文件簽回存檔 Dim 放大 As Boolean Dim 圖片資料庫指定 As String Dim DGVX, 列高 As Integer Private Sub Set_合約文件圖庫資料庫狀態() Dim ds9 As New DataSet : 圖庫清單_dgv.DataSource = Nothing : ds9.Clear() 圖庫清單_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖庫清單_dgv.ColumnHeadersHeight = 25 圖庫清單_dgv.AllowUserToAddRows = False 表頭(165) = "資料庫" : 表頭(166) = "狀態" SQL_工程文件資料庫管理查詢() da.Fill(ds9) : 圖庫清單_dgv.DataSource = ds9.Tables(0) : conn.Close() 圖庫清單_dgv.Columns(0).FillWeight = 100 : 圖庫清單_dgv.Columns(1).FillWeight = 20 End Sub Private Sub Set_合約清單() Dim ds6 As New DataSet 合約_dgv.DataSource = Nothing : ds6.Clear() 合約_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 合約_dgv.ColumnHeadersHeight = 40 : 合約_dgv.AllowUserToAddRows = False PA = 關鍵字搜尋_tb.Text : PA46 = 合約編號1_cb.Text SQL_合約清單_簽回存檔() da.Fill(ds6) : 合約_dgv.DataSource = ds6.Tables(0) : conn.Close() 合約_dgv.Columns(0).FillWeight = 100 : 合約_dgv.Columns("工程名稱_中").FillWeight = 250 : 合約_dgv.Columns("報價簽回").FillWeight = 40 合約_dgv.Columns("合約簽回").FillWeight = 40 : 合約_dgv.Columns("請款簽回").FillWeight = 40 : 合約_dgv.Columns("執行驗收").FillWeight = 40 合約_dgv.Columns("驗收簽回").FillWeight = 40 : 合約_dgv.Columns("開始保固").FillWeight = 40 : 合約_dgv.Columns("其他文件").FillWeight = 40 合約_dgv.Columns("保固簽回").FillWeight = 40 合約_dgv.Columns(0).ReadOnly = True If 放大 = True Then 合約_dgv.Columns("工程名稱_中").Visible = True : 合約_dgv.Columns("客戶名稱").Visible = True : 合約_dgv.Columns("工程名稱_英").Visible = True 合約_dgv.Columns("報價簽回").Visible = True : 合約_dgv.Columns("合約簽回").Visible = True : 合約_dgv.Columns("請款簽回").Visible = True 合約_dgv.Columns("執行驗收").Visible = True : 合約_dgv.Columns("驗收簽回").Visible = True : 合約_dgv.Columns("開始保固").Visible = True 合約_dgv.Columns("保固簽回").Visible = True : 合約_dgv.Columns("其他文件").Visible = True : 合約_dgv.Columns("簽回檔圖庫").Visible = True Else 合約_dgv.Columns("工程名稱_中").Visible = False : 合約_dgv.Columns("客戶名稱").Visible = False : 合約_dgv.Columns("工程名稱_英").Visible = False 合約_dgv.Columns("報價簽回").Visible = False : 合約_dgv.Columns("合約簽回").Visible = False : 合約_dgv.Columns("請款簽回").Visible = False 合約_dgv.Columns("執行驗收").Visible = False : 合約_dgv.Columns("驗收簽回").Visible = False : 合約_dgv.Columns("開始保固").Visible = False 合約_dgv.Columns("保固簽回").Visible = False : 合約_dgv.Columns("其他文件").Visible = False : 合約_dgv.Columns("簽回檔圖庫").Visible = False End If End Sub Private Sub Set_工程日報圖片1() Dim ds6 As New DataSet 圖片清單1_dgv.DataSource = Nothing : ds6.Clear() 圖片清單1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單1_dgv.ColumnHeadersHeight = 25 : 圖片清單1_dgv.AllowUserToAddRows = False : 圖片清單1_dgv.RowTemplate.Height = 列高 If 簽回檔圖庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 簽回檔圖庫_tb.Text : End If : PA1 = 合約編號_tb.Text : PA2 = "報價" SQL_連線字串_圖片資料庫() : SQL_合約清單_簽回存檔_圖片清單() da.Fill(ds6) : 圖片清單1_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單1_dgv.Columns(0).ReadOnly = True If 圖片清單1_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取1() : Else : 圖片1_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單1_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取1() 圖片1_pb.Image = Nothing PA1 = 合約編號_tb.Text : PA2 = "報價" : 圖片庫 = 簽回檔圖庫_tb.Text : SQL_連線字串_圖片資料庫() PA3 = 圖片清單1_dgv("Item", DGVX).Value.ToString : SQL_合約清單_簽回存檔_圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片1_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片1_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片2() Dim ds6 As New DataSet 圖片清單2_dgv.DataSource = Nothing : ds6.Clear() 圖片清單2_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單2_dgv.ColumnHeadersHeight = 25 : 圖片清單2_dgv.AllowUserToAddRows = False : 圖片清單2_dgv.RowTemplate.Height = 列高 If 簽回檔圖庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 簽回檔圖庫_tb.Text : End If : PA1 = 合約編號_tb.Text : PA2 = "合約" SQL_連線字串_圖片資料庫() : SQL_合約清單_簽回存檔_圖片清單() da.Fill(ds6) : 圖片清單2_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單2_dgv.Columns(0).ReadOnly = True If 圖片清單2_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取2() : Else : 圖片2_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單2_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取2() 圖片2_pb.Image = Nothing PA1 = 合約編號_tb.Text : PA2 = "合約" : 圖片庫 = 簽回檔圖庫_tb.Text : SQL_連線字串_圖片資料庫() PA3 = 圖片清單2_dgv("Item", DGVX).Value.ToString : SQL_合約清單_簽回存檔_圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片2_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片2_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片3() Dim ds6 As New DataSet 圖片清單3_dgv.DataSource = Nothing : ds6.Clear() 圖片清單3_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單3_dgv.ColumnHeadersHeight = 25 : 圖片清單3_dgv.AllowUserToAddRows = False : 圖片清單3_dgv.RowTemplate.Height = 列高 If 簽回檔圖庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 簽回檔圖庫_tb.Text : End If : PA1 = 合約編號_tb.Text : PA2 = "請款" SQL_連線字串_圖片資料庫() : SQL_合約清單_簽回存檔_圖片清單() da.Fill(ds6) : 圖片清單3_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單3_dgv.Columns(0).ReadOnly = True If 圖片清單3_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取3() : Else : 圖片3_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單3_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取3() 圖片3_pb.Image = Nothing PA1 = 合約編號_tb.Text : PA2 = "請款" : 圖片庫 = 簽回檔圖庫_tb.Text : SQL_連線字串_圖片資料庫() PA3 = 圖片清單3_dgv("Item", DGVX).Value.ToString : SQL_合約清單_簽回存檔_圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片3_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片3_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片4() Dim ds6 As New DataSet 圖片清單4_dgv.DataSource = Nothing : ds6.Clear() 圖片清單4_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單4_dgv.ColumnHeadersHeight = 25 : 圖片清單4_dgv.AllowUserToAddRows = False : 圖片清單4_dgv.RowTemplate.Height = 列高 If 簽回檔圖庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 簽回檔圖庫_tb.Text : End If : PA1 = 合約編號_tb.Text : PA2 = "驗收" SQL_連線字串_圖片資料庫() : SQL_合約清單_簽回存檔_圖片清單() da.Fill(ds6) : 圖片清單4_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單4_dgv.Columns(0).ReadOnly = True If 圖片清單4_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取4() : Else : 圖片4_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單4_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取4() 圖片4_pb.Image = Nothing PA1 = 合約編號_tb.Text : PA2 = "驗收" : 圖片庫 = 簽回檔圖庫_tb.Text : SQL_連線字串_圖片資料庫() PA3 = 圖片清單4_dgv("Item", DGVX).Value.ToString : SQL_合約清單_簽回存檔_圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片4_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片4_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片5() Dim ds6 As New DataSet 圖片清單5_dgv.DataSource = Nothing : ds6.Clear() 圖片清單5_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單5_dgv.ColumnHeadersHeight = 25 : 圖片清單5_dgv.AllowUserToAddRows = False : 圖片清單5_dgv.RowTemplate.Height = 列高 If 簽回檔圖庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 簽回檔圖庫_tb.Text : End If : PA1 = 合約編號_tb.Text : PA2 = "保固" SQL_連線字串_圖片資料庫() : SQL_合約清單_簽回存檔_圖片清單() da.Fill(ds6) : 圖片清單5_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單5_dgv.Columns(0).ReadOnly = True If 圖片清單5_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取5() : Else : 圖片5_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單5_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取5() 圖片5_pb.Image = Nothing PA1 = 合約編號_tb.Text : PA2 = "保固" : 圖片庫 = 簽回檔圖庫_tb.Text : SQL_連線字串_圖片資料庫() PA3 = 圖片清單5_dgv("Item", DGVX).Value.ToString : SQL_合約清單_簽回存檔_圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片5_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片5_pb.SizeMode = 4 End Sub Private Sub Set_工程日報圖片6() Dim ds6 As New DataSet 圖片清單6_dgv.DataSource = Nothing : ds6.Clear() 圖片清單6_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 圖片清單6_dgv.ColumnHeadersHeight = 25 : 圖片清單6_dgv.AllowUserToAddRows = False : 圖片清單6_dgv.RowTemplate.Height = 列高 If 簽回檔圖庫_tb.Text = "" Then : 圖片庫 = 圖片資料庫指定 : Else : 圖片庫 = 簽回檔圖庫_tb.Text : End If : PA1 = 合約編號_tb.Text : PA2 = "其他" SQL_連線字串_圖片資料庫() : SQL_合約清單_簽回存檔_圖片清單() da.Fill(ds6) : 圖片清單6_dgv.DataSource = ds6.Tables(0) : conn.Close() 圖片清單6_dgv.Columns(0).ReadOnly = True If 圖片清單6_dgv.Rows.Count > 0 Then : DGVX = 0 : 圖片清單讀取6() : Else : 圖片6_pb.Image = Nothing : End If Dim mycol As DataGridViewImageColumn = 圖片清單6_dgv.Columns("IMG") : mycol.ImageLayout = DataGridViewImageCellLayout.Zoom End Sub Private Sub 圖片清單讀取6() 圖片6_pb.Image = Nothing PA1 = 合約編號_tb.Text : PA2 = "其他" : 圖片庫 = 簽回檔圖庫_tb.Text : SQL_連線字串_圖片資料庫() PA3 = 圖片清單6_dgv("Item", DGVX).Value.ToString : SQL_合約清單_簽回存檔_圖片讀取() While dr.Read() = True Dim unused As Byte() = New Byte(-1) {} Dim bytes As Byte() = DirectCast(dr.Item("圖片"), Byte()) Dim oStream As New MemoryStream(bytes) 圖片6_pb.Image = Bitmap.FromStream(oStream) End While conn.Close() : 圖片6_pb.SizeMode = 4 End Sub Private Sub 甲方條件下拉清單讀取() SQL合約條件讀取() : 合約編號1_cb.Items.Clear() : 合約編號1_cb.Items.Add("") : While (dr.Read()) : 合約編號1_cb.Items.Add(dr("約號甲方")) : End While : conn.Close() End Sub Private Sub 合約文件簽回存檔_Load(sender As Object, e As EventArgs) Handles MyBase.Load Me.MdiParent = GCM_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True 視窗2_pl.Visible = False : 視窗2_pl.BringToFront() : Panel2.SendToBack() : 合約_dgv.BringToFront() 合約文件簽回存檔_Size() : 列高 = 40 End Sub Private Sub 合約文件簽回存檔_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown Dim CLO As Boolean SQL_文件資料庫查詢() If dr.Read() Then : 圖片資料庫指定 = dr("工程文件資料庫") : CLO = False : Else If 系統語言 = "繁體中文" Then : MsgBox("文件伺服器已滿,請聯繫系統管理員!!") Else : MsgBox("The file server is full, please contact the system administrator!!") End If : CLO = True End If 甲方條件下拉清單讀取() : Set_合約清單() 本機_wb.Navigate(My.Computer.FileSystem.SpecialDirectories.Desktop) Target1 = Target & AA(1) & "/" 伺服器_wb.Url = New Uri(Target1) If CLO = True Then : Me.Close() : End If End Sub Private Sub 合約文件簽回存檔_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged 合約文件簽回存檔_Size() End Sub Private Sub 合約文件簽回存檔_Size() MyModule1.清單字體大小調整() 合約_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value) 圖片清單1_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value) 圖片清單2_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value) 圖片清單3_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value) 圖片清單4_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value) 圖片清單5_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value) 圖片清單6_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", GCM_ERP_SYS.字體_NUD.Value) End Sub Private Sub 合約文件簽回存檔_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed End Sub Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove timeNow = 0 : GCM_ERP_SYS.Timer1.Enabled = False : GCM_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress timeNow = 0 : GCM_ERP_SYS.Timer1.Enabled = False : GCM_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 合約_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 合約_dgv.CellClick If e.RowIndex = -1 Then : Else 合約編號_tb.Text = 合約_dgv("合約編號", e.RowIndex).Value.ToString : 客戶名稱_tb.Text = 合約_dgv("客戶名稱", e.RowIndex).Value.ToString 工程名稱_中_tb.Text = 合約_dgv("工程名稱_中", e.RowIndex).Value.ToString : 工程名稱_英_tb.Text = 合約_dgv("工程名稱_英", e.RowIndex).Value.ToString 簽回檔圖庫_tb.Text = 合約_dgv("簽回檔圖庫", e.RowIndex).Value.ToString Set_工程日報圖片1() : Set_工程日報圖片2() : Set_工程日報圖片3() : Set_工程日報圖片4() : Set_工程日報圖片5() : Set_工程日報圖片6() End If If 放大 = True Then : 縮放2_bt.PerformClick() : Else : End If End Sub Private Sub 圖片清單1_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單1_dgv.CellClick If e.RowIndex = -1 Then : Else : 階段_tb.Text = "報價" : 文件號_tb.Text = 圖片清單1_dgv("Item", e.RowIndex).Value.ToString : DGVX = e.RowIndex : 圖片清單讀取1() : End If End Sub Private Sub 圖片清單2_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單2_dgv.CellClick If e.RowIndex = -1 Then : Else : 階段_tb.Text = "合約" : 文件號_tb.Text = 圖片清單2_dgv("Item", e.RowIndex).Value.ToString : DGVX = e.RowIndex : 圖片清單讀取2() : End If End Sub Private Sub 圖片清單3_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單3_dgv.CellClick If e.RowIndex = -1 Then : Else : 階段_tb.Text = "請款" : 文件號_tb.Text = 圖片清單3_dgv("Item", e.RowIndex).Value.ToString : DGVX = e.RowIndex : 圖片清單讀取3() : End If End Sub Private Sub 圖片清單4_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單4_dgv.CellClick If e.RowIndex = -1 Then : Else : 階段_tb.Text = "驗收" : 文件號_tb.Text = 圖片清單4_dgv("Item", e.RowIndex).Value.ToString : DGVX = e.RowIndex : 圖片清單讀取4() : End If End Sub Private Sub 圖片清單5_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單5_dgv.CellClick If e.RowIndex = -1 Then : Else : 階段_tb.Text = "保固" : 文件號_tb.Text = 圖片清單5_dgv("Item", e.RowIndex).Value.ToString : DGVX = e.RowIndex : 圖片清單讀取5() : End If End Sub Private Sub 圖片清單6_dgv_CellClick(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles 圖片清單6_dgv.CellClick If e.RowIndex = -1 Then : Else : 階段_tb.Text = "其他" : 文件號_tb.Text = 圖片清單6_dgv("Item", e.RowIndex).Value.ToString : DGVX = e.RowIndex : 圖片清單讀取6() : End If End Sub Private Sub 合約編號1_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 合約編號1_cb.SelectedIndexChanged Set_合約清單() End Sub Private Sub 圖檔入系統_bt_Click(sender As Object, e As EventArgs) Handles 圖檔入系統_bt.Click If 報價簽回_ch.Checked = False And 合約簽回_ch.Checked = False And 請款簽回_ch.Checked = False And 驗收簽回_ch.Checked = False And 保固簽回_ch.Checked = False And 其他文件_ch.Checked = False Then If 系統語言 = "繁體中文" Then : MsgBox("請選擇簽回文件是哪個階段!!") : Else : MsgBox("Please choose which stage the check-in file is!!") : End If : Else If 檔案名稱_tb.Text = "" Or 副檔名_tb.Text = "" Then : Else Dim ftpclient As System.Net.FtpWebRequest = System.Net.FtpWebRequest.Create(New System.Uri(Target1 & 檔案名稱_tb.Text & 副檔名_tb.Text)) ftpclient.UseBinary = True ftpclient.Credentials = New System.Net.NetworkCredential(FTP帳號, FTP密碼) ftpclient.Method = System.Net.WebRequestMethods.Ftp.ListDirectoryDetails ftpclient.KeepAlive = False Dim ftpresponse As System.Net.FtpWebResponse Try ftpresponse = CType(ftpclient.GetResponse, System.Net.FtpWebResponse) Console.WriteLine(ftpresponse.StatusCode.ToString + " " + ftpresponse.StatusDescription) Dim content(1024) As Byte : Dim index_a As Integer = 0 index_a = ftpresponse.GetResponseStream.Read(content, 0, content.Length) Dim contentstring As String = String.Empty While index_a > 0 index_a = ftpresponse.GetResponseStream.Read(content, 0, content.Length) : contentstring += System.Text.Encoding.UTF8.GetString(content) End While ftpresponse.Close() If contentstring.LastIndexOf(檔案名稱_tb.Text & 副檔名_tb.Text) > 0 Then Dim 驗證 As String = "" : Dim 取變數 As String : 取變數 = Strings.StrReverse(檔案名稱_tb.Text & 副檔名_tb.Text) For i As Integer = 1 To 10 If i = 1 Then : 驗證 = Strings.Left(取變數, i) : Else If Strings.Mid(取變數, i, 1) = "." Then : 驗證 = Strings.StrReverse(驗證) : Exit For : Else : 驗證 &= Strings.Mid(取變數, i, 1) : End If End If Next If 驗證 = "PNG" Or 驗證 = "png" Or 驗證 = "GIF" Or 驗證 = "gif" Or 驗證 = "BMP" Or 驗證 = "bmp" Or 驗證 = "JPG" Or 驗證 = "jpg" Or 驗證 = "JPEG" Or 驗證 = "jpeg" Then PA1 = 合約編號_tb.Text : 圖片庫 = 圖片資料庫指定 : BL1 = True : 簽回檔圖庫_tb.Text = 圖片庫 If 報價簽回_ch.Checked = True Then : PA2 = "報價" : SQL2 = "報價簽回" : ElseIf 合約簽回_ch.Checked = True Then : PA2 = "合約" : SQL2 = "合約簽回" ElseIf 請款簽回_ch.Checked = True Then : PA2 = "請款" : SQL2 = "請款簽回" : ElseIf 驗收簽回_ch.Checked = True Then : PA2 = "驗收" : SQL2 = "驗收簽回" ElseIf 保固簽回_ch.Checked = True Then : PA2 = "保固" : SQL2 = "保固簽回" : ElseIf 其他文件_ch.Checked = True Then : PA2 = "其他" : SQL2 = "其他文件" : End If SQL_連線字串_圖片資料庫() Dim 文件號 As String = "" : Dim 文件編號 As Integer SQL_合約清單_簽回存檔_最後一筆編號查詢() If dr.Read() Then : 文件編號 = Double.Parse(Strings.Right(dr("文件號").ToString, 2)) : Else : 文件編號 = 0 : End If conn.Close() : 文件編號 += 1 If 文件編號 < 10 Then : 文件號 = "IM" & "0" & 文件編號 ElseIf 文件編號 > 9 Then : 文件號 = "IM" & 文件編號 : End If PA3 = 文件號 : SQL_合約清單_簽回存檔_圖片入系統() : FTP方式刪除檔案() SQL_合約控制表簽回檔注記() : If 系統語言 = "繁體中文" Then : MsgBox("上傳完畢!!") : Else : MsgBox("Upload complete!!!!") : End If If PA2 = "報價" Then : Set_工程日報圖片1() : ElseIf PA2 = "合約" Then : Set_工程日報圖片2() : ElseIf PA2 = "請款" Then : Set_工程日報圖片3() ElseIf PA2 = "驗收" Then : Set_工程日報圖片4() : ElseIf PA2 = "保固" Then : Set_工程日報圖片5() : ElseIf PA2 = "其他" Then : Set_工程日報圖片6() End If : Set_合約清單() Else FTP方式刪除檔案() If 系統語言 = "繁體中文" Then : MsgBox("上傳文件並非常用圖片格式,文件已自動刪除,請專換成常用圖片檔案再行操作!!") Else : MsgBox("The uploaded file is not in a common image format, and the file has been automatically deleted, " & "Please replace it with a commonly used picture file and operate again!!") : End If End If Else : If 系統語言 = "繁體中文" Then : MsgBox("請先確定檔案資料已上傳到FTP!!") : Else : MsgBox("Please make sure the file has been uploaded to FTP first!!") : End If : End If Catch ex As Exception MsgBox(ex.Message) End Try End If End If End Sub Private Sub FTP方式刪除檔案() '---FTP方式刪除檔案---------------------------------------------------------------------------------------------------------------------------------------------------------------------- Dim frq As FtpWebRequest, frp As FtpWebResponse, fcr As NetworkCredential frq = CType(WebRequest.Create(New Uri(Target1 & 檔案名稱_tb.Text & 副檔名_tb.Text)), FtpWebRequest) fcr = New NetworkCredential(FTP帳號, FTP密碼) frq.Credentials = fcr frq.Method = WebRequestMethods.Ftp.DeleteFile frq.UseBinary = True frp = CType(frq.GetResponse, FtpWebResponse) frp.Close() 伺服器_wb.Refresh() '---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 檔案名稱_tb.Text = "" : 副檔名_tb.Text = "" End Sub Private Sub 導成圖片_bt_Click(sender As Object, e As EventArgs) Handles 導成圖片_bt.Click If 合約編號_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("請先選擇合約!!") : Else : MsgBox("Please select a contract first!!") : End If : Else If 文件號_tb.Text = "" Then If 系統語言 = "繁體中文" Then : MsgBox("請先選擇合約內的哪份文件!!") : Else : MsgBox("Please select which document in the contract first!!") : End If : Else With SaveFileDialog1 : .Filter = "所有文件(*.jpg)|*.jpg" : End With SaveFileDialog1.FileName = 合約編號_tb.Text & "-" & 階段_tb.Text & ".jpg" SaveFileDialog1.ShowDialog() : 檔案路徑_tb.Text = SaveFileDialog1.FileName PA1 = 合約編號_tb.Text : PA2 = 階段_tb.Text : PA3 = 文件號_tb.Text Dim ds1 As New DataSet : ds1.Clear() : SQL_合約清單_簽回存檔_圖片讀取1() : da.Fill(ds1) If ds1.Tables(0).Rows.Count > 0 Then Dim imgData() As Byte imgData = ds1.Tables(0).Rows(0).Item("圖片") Dim fs As FileStream fs = File.Create(檔案路徑_tb.Text, imgData.Length - 1) fs.Write(imgData, 0, imgData.Length - 1) fs.Close() End If : conn.Close() : If 系統語言 = "繁體中文" Then : MsgBox("下載完成!!") : Else : MsgBox("Download completed!!") : End If End If End If End Sub Private Sub 刪除圖片_bt_Click(sender As Object, e As EventArgs) Handles 刪除圖片_bt.Click If 合約編號_tb.Text = "" Then : If 系統語言 = "繁體中文" Then : MsgBox("請先選擇合約!!") : Else : MsgBox("Please select a contract first!!") : End If : Else If 文件號_tb.Text = "" Then If 系統語言 = "繁體中文" Then : MsgBox("請先選擇合約內的哪份文件!!") : Else : MsgBox("Please select which document in the contract first!!") : End If : Else Dim SS As String If 系統語言 = "繁體中文" Then : SS = "確定要刪除這份文件?" : Else : SS = "Are you sure you want to delete this file?" : End If Dim aa As MsgBoxResult = MsgBox(SS, MsgBoxStyle.OkCancel) If aa = MsgBoxResult.Ok Then Dim SS1 As String If 系統語言 = "繁體中文" Then : SS1 = "確認刪除文件請輸入 [YES] !!" : Else : SS1 = "Please enter [YES] to confirm the deletion of the file" : End If Dim SSA As String = InputBox(SS1) If SSA = "YES" Then PA1 = 合約編號_tb.Text : PA2 = 階段_tb.Text : PA3 = 文件號_tb.Text : 圖片庫 = 簽回檔圖庫_tb.Text : SQL_合約清單_簽回存檔_圖片刪除() If PA2 = "報價" Then : Set_工程日報圖片1() : If 圖片清單1_dgv.Rows.Count = 0 Then : SQL2 = "報價簽回" : BL1 = False : SQL_合約控制表簽回檔注記() : End If ElseIf PA2 = "合約" Then : Set_工程日報圖片2() : If 圖片清單2_dgv.Rows.Count = 0 Then : SQL2 = "合約簽回" : BL1 = False : SQL_合約控制表簽回檔注記() : End If ElseIf PA2 = "請款" Then : Set_工程日報圖片3() : If 圖片清單3_dgv.Rows.Count = 0 Then : SQL2 = "請款簽回" : BL1 = False : SQL_合約控制表簽回檔注記() : End If ElseIf PA2 = "驗收" Then : Set_工程日報圖片4() : If 圖片清單4_dgv.Rows.Count = 0 Then : SQL2 = "驗收簽回" : BL1 = False : SQL_合約控制表簽回檔注記() : End If ElseIf PA2 = "保固" Then : Set_工程日報圖片5() : If 圖片清單5_dgv.Rows.Count = 0 Then : SQL2 = "保固簽回" : BL1 = False : SQL_合約控制表簽回檔注記() : End If ElseIf PA2 = "其他" Then : Set_工程日報圖片6() : If 圖片清單6_dgv.Rows.Count = 0 Then : SQL2 = "其他文件" : BL1 = False : SQL_合約控制表簽回檔注記() : End If End If : Set_合約清單() End If End If End If End If End Sub Private Sub 檔案名稱_tb_DragEnter(sender As Object, e As DragEventArgs) Handles 檔案名稱_tb.DragEnter If e.Data.GetDataPresent(DataFormats.FileDrop) Then : Dim files As String() Try files = CType(e.Data.GetData(DataFormats.FileDrop), String()) : 檔案名稱_tb.Text = files(files.Length - 1) Catch ex As Exception MessageBox.Show(ex.Message) Return End Try End If '-------確認檔案是圖片--------------------------------------------------------------------------------------------------------------- Dim 驗證 As String = "" : Dim 取變數 As String : 取變數 = Strings.StrReverse(檔案名稱_tb.Text) For i As Integer = 1 To 10 If i = 1 Then : 驗證 = Strings.Left(取變數, i) : Else If Strings.Mid(取變數, i, 1) = "." Then : 驗證 = Strings.StrReverse(驗證) : Exit For : Else : 驗證 &= Strings.Mid(取變數, i, 1) : End If End If Next Dim STR2 As Integer = 0 : 檔案路徑_tb.Text = 檔案名稱_tb.Text If 檔案名稱_tb.Text = "" Then : Else For i As Integer = 0 To 9999 : Dim STR1 As Integer = Strings.Len(檔案路徑_tb.Text) If Strings.Right((檔案路徑_tb.Text), 1) <> "\" Then : STR1 -= 1 : STR2 += 1 If STR1 = 0 Then : 檔案路徑_tb.Text = "" : 檔案名稱_tb.Text = "" : i = 9999 Else : 檔案路徑_tb.Text = Strings.Left((檔案路徑_tb.Text), STR1) : End If Else : 檔案路徑_tb.Text = Strings.Right((檔案名稱_tb.Text), STR2) : 檔案名稱_tb.Text = 檔案路徑_tb.Text : i = 9999 : End If Next End If '-------取得副檔名--------------------------------------------------------------------------------------------------------------- For I As Integer = 1 To 99 : 副檔名_tb.Text = Strings.Mid(Strings.StrReverse(檔案名稱_tb.Text), I, 1) If 副檔名_tb.Text = "." Then : 副檔名_tb.Text = Strings.StrReverse(Strings.Left(Strings.StrReverse(檔案名稱_tb.Text), I)) : I = 99 : End If Next '-------取得檔名--------------------------------------------------------------------------------------------------------------- Dim 檔名 As String : Dim 檔名長度 As Integer For I As Integer = 1 To 99 : 檔名 = Strings.Mid(Strings.StrReverse(檔案名稱_tb.Text), I, 1) If 檔名 = "." Then 檔名長度 = Len(檔案名稱_tb.Text) - I 檔案名稱_tb.Text = Strings.Left(檔案名稱_tb.Text, 檔名長度) : I = 99 End If Next End Sub Private Sub 檔案名稱_tb_DragDrop(ByVal sender As Object, ByVal e As DragEventArgs) Handles 檔案名稱_tb.DragDrop Dim files As Array = e.Data.GetData(DataFormats.FileDrop) For Each file As String In files 檔案名稱_tb.AppendText(file + Environment.NewLine) Next End Sub Private Sub 總表編輯_bt_Click(sender As Object, e As EventArgs) Handles 總表編輯_bt.Click If 視窗2_pl.Visible = False Then : 視窗2_pl.Location = New System.Drawing.Point(372, 126) : 視窗2_pl.Visible = True : Else : 視窗2_pl.Visible = False : End If End Sub Private Sub CanceL2_bt_Click(sender As Object, e As EventArgs) Handles CanceL2_bt.Click If 視窗2_pl.Visible = False Then : 視窗2_pl.Visible = True : 視窗2_pl.BringToFront() : Else 視窗2_pl.Visible = False : End If End Sub Private Sub 報價簽回_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 報價簽回_ch.Click 報價簽回_ch.Checked = True : 合約簽回_ch.Checked = False : 請款簽回_ch.Checked = False : 驗收簽回_ch.Checked = False : 保固簽回_ch.Checked = False : 其他文件_ch.Checked = False End Sub Private Sub 合約簽回_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 合約簽回_ch.Click 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = True : 請款簽回_ch.Checked = False : 驗收簽回_ch.Checked = False : 保固簽回_ch.Checked = False : 其他文件_ch.Checked = False End Sub Private Sub 請款簽回_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 請款簽回_ch.Click 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False : 請款簽回_ch.Checked = True : 驗收簽回_ch.Checked = False : 保固簽回_ch.Checked = False : 其他文件_ch.Checked = False End Sub Private Sub 驗收簽回_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 驗收簽回_ch.Click 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False : 請款簽回_ch.Checked = False : 驗收簽回_ch.Checked = True : 保固簽回_ch.Checked = False : 其他文件_ch.Checked = False End Sub Private Sub 保固簽回_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 保固簽回_ch.Click 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False : 請款簽回_ch.Checked = False : 驗收簽回_ch.Checked = False : 保固簽回_ch.Checked = True : 其他文件_ch.Checked = False End Sub Private Sub 其他文件_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 其他文件_ch.Click 報價簽回_ch.Checked = False : 合約簽回_ch.Checked = False : 請款簽回_ch.Checked = False : 驗收簽回_ch.Checked = False : 保固簽回_ch.Checked = False : 其他文件_ch.Checked = True End Sub Private Sub 圖片1_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片1_pb.Click If IsNothing(圖片1_pb.Image) = False Then : 圖片傳遞 = 圖片1_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片2_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片2_pb.Click If IsNothing(圖片2_pb.Image) = False Then : 圖片傳遞 = 圖片2_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片3_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片3_pb.Click If IsNothing(圖片3_pb.Image) = False Then : 圖片傳遞 = 圖片3_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片4_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片4_pb.Click If IsNothing(圖片4_pb.Image) = False Then : 圖片傳遞 = 圖片4_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片5_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片5_pb.Click If IsNothing(圖片5_pb.Image) = False Then : 圖片傳遞 = 圖片5_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 圖片6_pb_pb_Click(sender As Object, e As EventArgs) Handles 圖片6_pb.Click If IsNothing(圖片6_pb.Image) = False Then : 圖片傳遞 = 圖片6_pb.Image : 圖片放大視窗.ShowDialog() : End If End Sub Private Sub 順時鐘90度旋轉1_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉1_bt.Click If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉1_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉1_bt.Click If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉1_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉1_bt.Click If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉1_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉1_bt.Click If IsNothing(圖片1_pb.Image) = True Then : Else : 圖片1_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片1_pb.Refresh() : 圖片1_pb.SizeMode = 4 : End If End Sub Private Sub 順時鐘90度旋轉2_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉2_bt.Click If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉2_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉2_bt.Click If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉2_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉2_bt.Click If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉2_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉2_bt.Click If IsNothing(圖片2_pb.Image) = True Then : Else : 圖片2_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片2_pb.Refresh() : 圖片2_pb.SizeMode = 4 : End If End Sub Private Sub 順時鐘90度旋轉3_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉3_bt.Click If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉3_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉3_bt.Click If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉3_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉3_bt.Click If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉3_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉3_bt.Click If IsNothing(圖片3_pb.Image) = True Then : Else : 圖片3_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片3_pb.Refresh() : 圖片3_pb.SizeMode = 4 : End If End Sub Private Sub 順時鐘90度旋轉4_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉4_bt.Click If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉4_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉4_bt.Click If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉4_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉4_bt.Click If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉4_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉4_bt.Click If IsNothing(圖片4_pb.Image) = True Then : Else : 圖片4_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片4_pb.Refresh() : 圖片4_pb.SizeMode = 4 : End If End Sub Private Sub 順時鐘90度旋轉5_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉5_bt.Click If IsNothing(圖片5_pb.Image) = True Then : Else : 圖片5_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片5_pb.Refresh() : 圖片5_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉5_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉5_bt.Click If IsNothing(圖片5_pb.Image) = True Then : Else : 圖片5_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片5_pb.Refresh() : 圖片5_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉5_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉5_bt.Click If IsNothing(圖片5_pb.Image) = True Then : Else : 圖片5_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片5_pb.Refresh() : 圖片5_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉5_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉5_bt.Click If IsNothing(圖片5_pb.Image) = True Then : Else : 圖片5_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片5_pb.Refresh() : 圖片5_pb.SizeMode = 4 : End If End Sub Private Sub 順時鐘90度旋轉6_bt_Click(sender As Object, e As EventArgs) Handles 順時鐘90度旋轉6_bt.Click If IsNothing(圖片6_pb.Image) = True Then : Else : 圖片6_pb.Image.RotateFlip(RotateFlipType.Rotate90FlipNone) : 圖片6_pb.Refresh() : 圖片6_pb.SizeMode = 4 : End If End Sub Private Sub 逆時鐘90度旋轉6_bt_Click(sender As Object, e As EventArgs) Handles 逆時鐘90度旋轉6_bt.Click If IsNothing(圖片6_pb.Image) = True Then : Else : 圖片6_pb.Image.RotateFlip(RotateFlipType.Rotate270FlipNone) : 圖片6_pb.Refresh() : 圖片6_pb.SizeMode = 4 : End If End Sub Private Sub 水平翻轉6_bt_Click(sender As Object, e As EventArgs) Handles 水平翻轉6_bt.Click If IsNothing(圖片6_pb.Image) = True Then : Else : 圖片6_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipY) : 圖片6_pb.Refresh() : 圖片6_pb.SizeMode = 4 : End If End Sub Private Sub 垂直翻轉6_bt_Click(sender As Object, e As EventArgs) Handles 垂直翻轉6_bt.Click If IsNothing(圖片6_pb.Image) = True Then : Else : 圖片6_pb.Image.RotateFlip(RotateFlipType.Rotate180FlipX) : 圖片6_pb.Refresh() : 圖片6_pb.SizeMode = 4 : End If End Sub Private Sub 縮放2_bt_Click(sender As Object, e As EventArgs) Handles 縮放2_bt.Click Dim NX, NY As Integer : NX = 合約_dgv.Size.Width : NY = 合約_dgv.Size.Height If 放大 = True Then 合約_dgv.Size = New System.Drawing.Point(NX - 600, NY) : 放大 = False : 合約_dgv.Columns("工程名稱_中").Visible = False 合約_dgv.Columns("報價簽回").Visible = False : 合約_dgv.Columns("合約簽回").Visible = False : 合約_dgv.Columns("請款簽回").Visible = False 合約_dgv.Columns("執行驗收").Visible = False : 合約_dgv.Columns("驗收簽回").Visible = False : 合約_dgv.Columns("開始保固").Visible = False 合約_dgv.Columns("保固簽回").Visible = False : 合約_dgv.Columns("其他文件").Visible = False Else 合約_dgv.Size = New System.Drawing.Point(NX + 600, NY) : 放大 = True : 合約_dgv.Columns("工程名稱_中").Visible = True 合約_dgv.Columns("報價簽回").Visible = True : 合約_dgv.Columns("合約簽回").Visible = True : 合約_dgv.Columns("請款簽回").Visible = True 合約_dgv.Columns("執行驗收").Visible = True : 合約_dgv.Columns("驗收簽回").Visible = True : 合約_dgv.Columns("開始保固").Visible = True 合約_dgv.Columns("保固簽回").Visible = True : 合約_dgv.Columns("其他文件").Visible = True End If End Sub Private Sub 讀取資料夾路徑_bt_Click(sender As Object, e As EventArgs) Handles 讀取資料夾路徑_bt.Click If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then : 本機_wb.Navigate(FolderBrowserDialog1.SelectedPath) : End If End Sub Dim OldX, OldY As Long Dim drag As Boolean Private Sub 視窗2_pl_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseDown If e.Button = MouseButtons.Left Then : OldX = e.X : OldY = e.Y : drag = True : End If End Sub Private Sub 視窗2_pl_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseMove If drag Then : 視窗2_pl.Left = 視窗2_pl.Left + e.X - OldX : 視窗2_pl.Top = 視窗2_pl.Top + e.Y - OldY : End If End Sub Private Sub 視窗2_pl_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 視窗2_pl.MouseUp drag = False End Sub End Class