ยินดีต้อนรับแขกผู้มาเยือน กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน
ส่งอีเมล์ยืนยันการใช้งาน?
 
Please Login!

ผู้เขียน หัวข้อ: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ  (อ่าน 3677 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ sornram9254.com

  • ผู้สนับสนุน
  • *
  • โพสต์: 573
  • คูลเฟิร์ม: 3676
  • zula: 549.5
  • เพศ: ชาย
    • ดูรายละเอียด
    • Sornram9254
  • OS: WindowsBrowser: Firefox
  • เทคนิคคอมพิวเตอร์

  • ล็อคอิน @ 24 พฤษภาคม 2013, 04:51:24
ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« เมื่อ: 31 กรกฎาคม 2010, 17:51:17 »
ปิด Form1 แล้วแสดง Form2
ผมต้องการให้กดปุ่มที่ Form1 แล้วเด้งไป Form2 แล้วทำการปิด Form1 ทำอย่างไรครับ
 :e2:
Coolfirmed by (0)สมาชิก:
 
« แก้ไขครั้งสุดท้าย: 31 กรกฎาคม 2010, 18:07:36 โดย sornram9254 »






ออฟไลน์ kxth10

  • นักเรียนมัธยม
  • *
  • โพสต์: 505
  • คูลเฟิร์ม: 1013
  • zula: 431.5
  • เพศ: ชาย
    • ดูรายละเอียด
  • OS: WindowsBrowser: Firefox

  • ล็อคอิน @ เมื่อวานนี้ เวลา 22:46:53
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #1 เมื่อ: 31 กรกฎาคม 2010, 18:36:59 »
เข้าใจว่าเป็น VB6
โค๊ด: [Select]
Private Sub Command1_Click()
    Form2.Show
    Unload Form1 ' หรือ Unload Me
End Sub
Coolfirmed by (0)สมาชิก:
 
จำเป็นต้องใช้ FlashPlayer
  Free download by kxth10@gmail.com
>NCN KaraOKE (VB6)    >Kara Duplicate 1.4   >Unlock MIDI   >MIDI Flat Volume   >Kara Rename 3 Files  
>ShellWin32API   >EXCEL 100 Year

ออฟไลน์ sornram9254.com

  • ผู้สนับสนุน
  • *
  • โพสต์: 573
  • คูลเฟิร์ม: 3676
  • zula: 549.5
  • เพศ: ชาย
    • ดูรายละเอียด
    • Sornram9254
  • OS: WindowsBrowser: Firefox
  • เทคนิคคอมพิวเตอร์

  • ล็อคอิน @ 24 พฤษภาคม 2013, 04:51:24
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #2 เมื่อ: 31 กรกฎาคม 2010, 18:41:45 »
เข้าใจว่าเป็น VB6
โค๊ด: [Select]
Private Sub Command1_Click()
    Form2.Show
    Unload Form1 ' หรือ Unload Me
End Sub
ขอบคุณครับ ตอนแรกผมใช้
โค๊ด: [Select]
Private Sub Command1_Click()
Load Form2
Form1.Hide
Form2.Show
End Sub
แต่ Form1 มันไม่ปิดอ่ะ สรุปก็คือใช้ Unload แทน
ขอบคุณมากๆครับ
Coolfirmed by (0)สมาชิก:
 






ออฟไลน์ ICheer_No0M

  • สายตรวจ
  • *
  • โพสต์: 2,791
  • คูลเฟิร์ม: 12453
  • zula: 1763
  • เพศ: ชาย
    • ดูรายละเอียด
    • ICheer_No0M : เศษขยะบนโลกไซเบอร์
  • OS: WindowsBrowser: Firefox
  • On Error Resume Next

  • ล็อคอิน @ 23 พฤษภาคม 2013, 09:05:57
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #3 เมื่อ: 31 กรกฎาคม 2010, 18:47:05 »

ปิด Form1 แล้วแสดง Form2 อย่างไรครับ

โค๊ด: [Select]
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing

        form2.Show()

        Me.Close()

    End Sub




ผมต้องการให้กดปุ่มที่ Form1 แล้วเด้งไป Form2 แล้วทำการปิด Form1 ทำอย่างไรครับ

โค๊ด: [Select]
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Form2.Show()

        Me.Hide()
    End Sub
Coolfirmed by (2)สมาชิก:

ออฟไลน์ kxth10

  • นักเรียนมัธยม
  • *
  • โพสต์: 505
  • คูลเฟิร์ม: 1013
  • zula: 431.5
  • เพศ: ชาย
    • ดูรายละเอียด
  • OS: WindowsBrowser: Firefox

  • ล็อคอิน @ เมื่อวานนี้ เวลา 22:46:53
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #4 เมื่อ: 31 กรกฎาคม 2010, 18:57:20 »
คำสั่ง .Show ใช้แสดง Form หลังจากใช้ .Hide ครับ
สำหรับ .Hide นั้นเป็นการซ่อน Form เท่านั้นครับ ไม่ปิดการทำงานของ Form โดยยังมีการใช้หน่วยความจำและทำงานอยู่ตลอดเวลา
Coolfirmed by (0)สมาชิก:
 
« แก้ไขครั้งสุดท้าย: 31 กรกฎาคม 2010, 19:12:04 โดย kxth10 »
จำเป็นต้องใช้ FlashPlayer
  Free download by kxth10@gmail.com
>NCN KaraOKE (VB6)    >Kara Duplicate 1.4   >Unlock MIDI   >MIDI Flat Volume   >Kara Rename 3 Files  
>ShellWin32API   >EXCEL 100 Year

ออฟไลน์ sornram9254.com

  • ผู้สนับสนุน
  • *
  • โพสต์: 573
  • คูลเฟิร์ม: 3676
  • zula: 549.5
  • เพศ: ชาย
    • ดูรายละเอียด
    • Sornram9254
  • OS: WindowsBrowser: Firefox
  • เทคนิคคอมพิวเตอร์

  • ล็อคอิน @ 24 พฤษภาคม 2013, 04:51:24
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #5 เมื่อ: 31 กรกฎาคม 2010, 19:20:26 »
คำสั่ง .Show ใช้แสดง Form หลังจากใช้ .Hide ครับ
สำหรับ .Hide นั้นเป็นการซ่อน Form เท่านั้นครับ ไม่ปิดการทำงานของ Form โดยยังมีการใช้หน่วยความจำและทำงานอยู่ตลอดเวลา
อ่อ ครับผม ตอนแรกนอกจาก .Hide ผมยังใช้ .Close แต่มัน Compile ไม่ผ่าน (คำสั่ง .Close ได้มาจาก Google ครับ)
ทำไมใส่ .Close แล้ว Compile ไม่ผ่านอ่ะครับ (อยากรู้อ่ะครับ)
Coolfirmed by (0)สมาชิก:
 






ออฟไลน์ kxth10

  • นักเรียนมัธยม
  • *
  • โพสต์: 505
  • คูลเฟิร์ม: 1013
  • zula: 431.5
  • เพศ: ชาย
    • ดูรายละเอียด
  • OS: WindowsBrowser: Firefox

  • ล็อคอิน @ เมื่อวานนี้ เวลา 22:46:53
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #6 เมื่อ: 31 กรกฎาคม 2010, 19:39:05 »
.Close ถ้าใช้กับ VB6 จะใช้งานไม่ได้ครับ แต่ใช้งานได้กับ VB2005 ขึ้นไป
Coolfirmed by (1)สมาชิก:
จำเป็นต้องใช้ FlashPlayer
  Free download by kxth10@gmail.com
>NCN KaraOKE (VB6)    >Kara Duplicate 1.4   >Unlock MIDI   >MIDI Flat Volume   >Kara Rename 3 Files  
>ShellWin32API   >EXCEL 100 Year

ออฟไลน์ sak2005

  • สมาชิกกิตติมศักดิ์
  • *
  • โพสต์: 1,934
  • คูลเฟิร์ม: 7828
  • zula: 3654.25
  • เพศ: ชาย
    • ดูรายละเอียด
  • OS: WindowsBrowser: Firefox
  • ตำแหน่ง:ครูผู้ให้

  • ล็อคอิน @ เมื่อวานนี้ เวลา 23:51:32
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #7 เมื่อ: 13 พฤษภาคม 2012, 09:23:00 »
Form1 เป็นฟอร์มแม่ หรือ ฟอร์มหลัก Form2 เป็นฟอร์มลูก ถ้าปิดฟอร์มแม่ ฟอร์มลูกก็อยู่ไม่ได้

ต้องทำเป็น 2 Solutions แยกกัน คือ Solution ลูก และ Solution แม่ แล้วนำมาใช้ร่วมกัน

โดยทั่วไปแล้ว การเปลี่ยนหน้าฟอร์ม ไป - มา จะไม่ค่อยใช้วิธี ปิดฟอร์มเก่า แล้วสั่งเปิดฟอร์มใหม่

ส่วนมากจะใช้ TabControl ในการเปลี่ยนหน้าฟอร์ม ลองทำดูครับ

การเขียนคำสั่งบังคับควบคุมนั้น Object จะควบคุมได้ง่ายกว่า Form

ความรู้ใหม่ๆที่เกิดขึ้น จะไม่มีอยู่ในตำรา แต่มีอยู่ในสมองที่ค้นคิด
Coolfirmed by (2)สมาชิก:
« แก้ไขครั้งสุดท้าย: 13 พฤษภาคม 2012, 17:49:04 โดย sak2005 »
จำเป็นต้องใช้ FlashPlayer

คำคม: เมื่อเวลาเปลี่ยน.. ทุกอย่างเปลี่ยน..

ออฟไลน์ sak2005

  • สมาชิกกิตติมศักดิ์
  • *
  • โพสต์: 1,934
  • คูลเฟิร์ม: 7828
  • zula: 3654.25
  • เพศ: ชาย
    • ดูรายละเอียด
  • OS: WindowsBrowser: Firefox
  • ตำแหน่ง:ครูผู้ให้

  • ล็อคอิน @ เมื่อวานนี้ เวลา 23:51:32
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #8 เมื่อ: 30 ตุลาคม 2012, 01:14:20 »
ปิดฟอร์ม1และเปิดฟอร์ม2

โค๊ด: [Select]
Public Class Form1
    Private form2 As New Form
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        form2.Text = "Form2"
        If form2.ShowDialog = Windows.Forms.DialogResult.OK Then
            Me.Dispose()
        Else
            Me.Close()
        End If
    End Sub
End Class
Coolfirmed by (1)สมาชิก:
« แก้ไขครั้งสุดท้าย: 30 ตุลาคม 2012, 01:18:45 โดย sak2005 »
จำเป็นต้องใช้ FlashPlayer

คำคม: เมื่อเวลาเปลี่ยน.. ทุกอย่างเปลี่ยน..

ออฟไลน์ sak2005

  • สมาชิกกิตติมศักดิ์
  • *
  • โพสต์: 1,934
  • คูลเฟิร์ม: 7828
  • zula: 3654.25
  • เพศ: ชาย
    • ดูรายละเอียด
  • OS: WindowsBrowser: Firefox
  • ตำแหน่ง:ครูผู้ให้

  • ล็อคอิน @ เมื่อวานนี้ เวลา 23:51:32
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #9 เมื่อ: 30 ตุลาคม 2012, 15:54:23 »
Get Events Handle Form2

1.Create new button1
2.Add event handle

Example: Event button
โค๊ด: [Select]
Public Class Form1
    Private form2 As New Form
    Private button1 As New Button
    Private proc As Process
    Public Sub New()
        MyBase.New()
        InitializeComponent()
        button1.Text = "RunApp"
        button1.Location = New Point(100, 100)
        button1.Cursor = Cursors.Hand
        form2.Text = "Form2"
        form2.Controls.Add(button1)
        AddHandler button1.Click, AddressOf button1_Click
        AddHandler form2.FormClosing, AddressOf form2_FormClosing
    End Sub
    Public Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
        Dim pList() As System.Diagnostics.Process = _
        System.Diagnostics.Process.GetProcessesByName("calc")
        Dim app As String = Nothing
        For Each proc As System.Diagnostics.Process In pList
            app = proc.ProcessName
        Next
        If app = "calc" Then
            Return
        Else
            proc = Process.Start("Calc.exe")
        End If
    End Sub
    Public Sub form2_FormClosing(ByVal sender As Object, ByVal e As EventArgs)
        Try
            proc.Kill()
        Catch ex As Exception
        End Try
    End Sub
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        form2.StartPosition = FormStartPosition.CenterScreen
        If form2.ShowDialog = Windows.Forms.DialogResult.OK Then
            Me.Dispose()
        Else
            Me.Close()
        End If
    End Sub
End Class
Coolfirmed by (1)สมาชิก:
จำเป็นต้องใช้ FlashPlayer

คำคม: เมื่อเวลาเปลี่ยน.. ทุกอย่างเปลี่ยน..

ออฟไลน์ sak2005

  • สมาชิกกิตติมศักดิ์
  • *
  • โพสต์: 1,934
  • คูลเฟิร์ม: 7828
  • zula: 3654.25
  • เพศ: ชาย
    • ดูรายละเอียด
  • OS: WindowsBrowser: Firefox
  • ตำแหน่ง:ครูผู้ให้

  • ล็อคอิน @ เมื่อวานนี้ เวลา 23:51:32
Re: ปิด Form1 แล้วแสดง Form2 อย่างไรครับ
« ตอบกลับ #10 เมื่อ: 31 ตุลาคม 2012, 02:14:05 »
ปิด Form2 ก่อน แล้วค่อยเปิด Form3

โค๊ด: [Select]
Public Class Form1
    Private form2 As New Form
    Private form3 As New Form
    Public Sub New()
        MyBase.New()
        InitializeComponent()
        form2.Text = "Form2"
        form3.Text = "Form3"
        AddHandler form2.FormClosing, AddressOf form2_FormClosing
    End Sub
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If form2.ShowDialog = Windows.Forms.DialogResult.OK Then
            Me.Dispose()
        Else
            Me.Close()
        End If
    End Sub
   Public Sub form2_FormClosing(ByVal sender As Object, ByVal e As EventArgs)
        form2.Dispose()
        form3.ShowDialog()
    End Sub
End Class
Coolfirmed by (1)สมาชิก:
จำเป็นต้องใช้ FlashPlayer

คำคม: เมื่อเวลาเปลี่ยน.. ทุกอย่างเปลี่ยน..