Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > .NET Framework > Forum > ทำการกำหนดสิทธิ์ในการเลือกใช้ ToolStripButton ไว้ในฟอร์มล็อกอืน ไม่เห็นมีอะไรเกิดขึ้น?


 

[.NET] ทำการกำหนดสิทธิ์ในการเลือกใช้ ToolStripButton ไว้ในฟอร์มล็อกอืน ไม่เห็นมีอะไรเกิดขึ้น?

 
Topic : 118665



โพสกระทู้ ( 216 )
บทความ ( 0 )



สถานะออฟไลน์



Code (VB.NET)
01.Imports System.Data
02.Imports System.Data.OleDb
03.Module Module1
04.    Public con As OleDbConnection
05.    Public da As OleDbDataAdapter
06.    Public ds As DataSet
07.    Public cmd As OleDbCommand
08.    Public rd As OleDbDataReader
09.    Public str As String
10. 
11.    Public Sub connection()
12.        str = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\admim\Documents\ฐานข้อมูล5.accdb"
13.        con = New OleDbConnection(str)
14.        If con.State = ConnectionState.Closed Then
15.            con.Open()
16.        End If
17.    End Sub
18.End Module
19. 
20.Public Class frmlogin
21. 
22.    Private Sub Login_Load(sender As Object, e As EventArgs) Handles MyBase.Load
23.     
24.    End Sub
25. 
26.    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
27.        connection()
28.        If (txtuser.Text = "") Then
29.            MessageBox.Show("กรุณากรอกUsername", "Login", MessageBoxButtons.OK, MessageBoxIcon.Warning)
30.            txtuser.Focus()
31.            Exit Sub
32.        End If
33. 
34.        If (txtpass.Text = "") Then
35.            MessageBox.Show("กรุณากรอกPassword", "Login", MessageBoxButtons.OK, MessageBoxIcon.Warning)
36.            txtpass.Focus()
37.            Exit Sub
38.        End If
39. 
40.        If txtuser.Text = "user1" And txtpass.Text = "1234" Then
41.            MessageBox.Show("คุณคือ user1", "Login", MessageBoxButtons.OK)
42.            Call user1login()
43.        ElseIf txtuser.Text = "user2" And txtpass.Text = "4567" Then
44.            MessageBox.Show("คุณคือ user2", "Login", MessageBoxButtons.OK)
45.            Call user2login()
46.        ElseIf txtuser.Text = "user3" And txtpass.Text = "7890" Then
47.            MessageBox.Show("คุณคือ user3", "Login", MessageBoxButtons.OK)
48.            Call user3login()
49.        Else
50.            MsgBox("username หรือ password ไม่ถูกต้อง")
51. 
52.        End If
53.    End Sub
54. 
55.    Private Sub user1login()
56.        Dim frmpro As New frmproject
57.        frmproject.Show()
58.        Me.Hide()
59.        frmpro.ToolStripButton1.Visible = True
60.        frmpro.ToolStripButton2.Visible = False
61.        frmpro.ToolStripButton3.Visible = False
62.        frmpro.ToolStripButton4.Visible = True
63. 
64.    End Sub
65. 
66.    Private Sub user2login()
67.        Dim frmpro As New frmproject
68.        frmproject.Show()
69.        Me.Hide()
70.        frmpro.ToolStripButton1.Visible = False
71.        frmpro.ToolStripButton2.Visible = True
72.        frmpro.ToolStripButton3.Visible = False
73.        frmpro.ToolStripButton4.Visible = True
74.    End Sub
75. 
76.    Private Sub user3login()
77.        Dim frmpro As New frmproject
78.        frmproject.Show()
79.        Me.Hide()
80.        frmpro.ToolStripButton1.Visible = False
81.        frmpro.ToolStripButton2.Visible = True
82.        frmpro.ToolStripButton3.Visible = True
83.        frmpro.ToolStripButton4.Visible = True
84.    End Sub
85. 
86.    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
87.        If MessageBox.Show("คุณต้องการออกจากระบบ?", "Login", MessageBoxButtons.YesNo) = DialogResult.Yes Then
88.            Application.Exit()
89.        End If
90.        'ใช้แทน me.close() เพราะต้องการมีกล่องข้อความถามว่า คุณต้องการออกจากระบบ?
91. 
92.    End Sub

คือเมื่อuser1 loginเข้ามา มีแต่.ToolStripButton1กับ.ToolStripButton4ที่ใช้งานได้



Tag : .NET, Ms Access, VS 2012 (.NET 4.x)



ประวัติการแก้ไข
2015-09-01 15:13:45
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-09-01 15:13:17 By : peemes101 View : 1074 Reply : 11
 

 

No. 1



โพสกระทู้ ( 317 )
บทความ ( 0 )



สถานะออฟไลน์


โค้ดน่าจะโอเคแล้วนะครับ ไม่ได้ตรงไหนเหรอครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-01 15:48:56 By : Freedom
 

 

No. 2

Guest


คงต้องเอาโค้ดของฟอร์ม frmproject มาดูนะครับ
หรือมั้ยก็ส่งค่า รหัสไปให้อีกแล้วตรวจสอบในอีกฟอร์มน่าจะดีกว่านะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-01 16:18:04 By : Mi
 

 

No. 3



โพสกระทู้ ( 216 )
บทความ ( 0 )



สถานะออฟไลน์


มันไม่เป็นในสิ่งที่ต้องการคือ
เมื่อ user1เข้ามามันกดToolStripButtonได้ทุกปุ่มเลย
แต่สิ่งที่ต้องการคือกดที่เฉพาะToolStripButton1กับToolStripButton4เท่านั้น ส่วนToolStripButtonที่เหลือเป็นenable
และเมื่อกดที่ToolStripButton มันโชว์ฟอร์มเดียวเท่านั้น โดยไม่ซ้อนกัน


อันนี้เป็นโค้ดฟอร์มfrmproject
Code (VB.NET)
01.Imports System.Data
02.Imports System.Data.OleDb
03.Public Class frmproject
04. 
05.    Private Sub frmproject_Load(sender As Object, e As EventArgs) Handles MyBase.Load
06.        If Not (Me.ActiveMdiChild Is Nothing) Then
07.            Me.ActiveMdiChild.Close()
08.        End If
09.         
10.    End Sub
11. 
12.    Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
13.        Dim frm As Form 'ให้ frm เป็น Form ธรรมดา
14. 
15.        'ค้นหาฟอร์มลูกทั้งหมดก่อนว่ามี Form1 หรือยัง
16.        For Each frm In Me.MdiChildren
17.            If (TypeOf frm Is Form1) Then
18.                frm.Activate() 'ถ้าพบ สั่ง Activate เพื่อให้วินโดว์นั้นแสดงขึ้นมาอยู่ข้างบนสุด
19.                Exit Sub       'บรรลุความประสงค์ของ procedure นี้แล้ว.
20.            End If
21.        Next
22. 
23. 
24.        Dim f1 As New Form1 'ให้สร้างอ๊อบเจ็กต์ฟอร์มใหม่ เพื่อเปิดฟอร์มตามปกติ
25.        f1.MdiParent = Me   'กำหนดให้เป็นฟอร์มลูกของฟอร์มปัจจุบัน
26.        f1.Show()           'สั่งให้แสดงบนหน้าจอ
27.         
28. 
29. 
30. 
31.    End Sub
32. 
33.    Private Sub ToolStripButton2_Click(sender As Object, e As EventArgs) Handles ToolStripButton2.Click
34.        Dim frm1 As Form 'ให้ frm เป็น Form ธรรมดา
35. 
36.        'ค้นหาฟอร์มลูกทั้งหมดก่อนว่ามี Form1 หรือยัง
37.        For Each frm1 In Me.MdiChildren
38.            If (TypeOf frm1 Is Form2) Then
39.                frm1.Activate() 'ถ้าพบ สั่ง Activate เพื่อให้วินโดว์นั้นแสดงขึ้นมาอยู่ข้างบนสุด
40.                Exit Sub       'บรรลุความประสงค์ของ procedure นี้แล้ว.
41.            End If
42.        Next
43. 
44.        Dim f2 As New Form2 'ให้สร้างอ๊อบเจ็กต์ฟอร์มใหม่ เพื่อเปิดฟอร์มตามปกติ
45.        f2.MdiParent = Me   'กำหนดให้เป็นฟอร์มลูกของฟอร์มปัจจุบัน
46.        f2.Show()           'สั่งให้แสดงบนหน้าจอ
47.         
48. 
49. 
50. 
51.    End Sub
52. 
53.    Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles ToolStripButton3.Click
54.        Dim frm2 As Form 'ให้ frm เป็น Form ธรรมดา
55. 
56.        'ค้นหาฟอร์มลูกทั้งหมดก่อนว่ามี Form1 หรือยัง
57.        For Each frm2 In Me.MdiChildren
58.            If (TypeOf frm2 Is Form3) Then
59.                frm2.Activate() 'ถ้าพบ สั่ง Activate เพื่อให้วินโดว์นั้นแสดงขึ้นมาอยู่ข้างบนสุด
60.                Exit Sub       'บรรลุความประสงค์ของ procedure นี้แล้ว.
61.            End If
62.        Next
63. 
64. 
65. 
66.        Dim f3 As New Form3 'ให้สร้างอ๊อบเจ็กต์ฟอร์มใหม่ เพื่อเปิดฟอร์มตามปกติ
67.        f3.MdiParent = Me   'กำหนดให้เป็นฟอร์มลูกของฟอร์มปัจจุบัน
68.        f3.Show()           'สั่งให้แสดงบนหน้าจอ
69.    End Sub
70. 
71.    Private Sub ToolStripButton4_Click(sender As Object, e As EventArgs) Handles ToolStripButton4.Click
72.        MessageBox.Show("ออกจากระบบ", "Exit", MessageBoxButtons.OK)
73.Me.Close()
74.    End Sub



ประวัติการแก้ไข
2015-09-02 00:27:51
2015-09-02 00:39:34
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-01 21:20:21 By : peemes101
 

 

No. 4



โพสกระทู้ ( 317 )
บทความ ( 0 )



สถานะออฟไลน์


ถ้าให้เดา ถ้าจะผิด ก็น่าจะผิดตรงนี้แหละครับ สังเกตุดูดีๆนะครับ

- frmpro ใช้ในการประกาศ Object และซ่อนปุ่ม แต่พอแสดงผลใช้ frmproject ตัวนี้แทน

ลองเปลี่ยนมาใช้ frmpro.Show() ดูครับ


Code
Dim frmpro As New frmproject frmproject.Show() Me.Hide() frmpro.ToolStripButton1.Visible = True frmpro.ToolStripButton2.Visible = False frmpro.ToolStripButton3.Visible = False frmpro.ToolStripButton4.Visible = True

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-02 08:37:11 By : Freedom
 

 

No. 5



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ลองสร้าง form ใหม่มาครับ

น่าจะมาจากตั้งค่าไรซักอย่าง
ผมเอาโค๊ดไปเล่นดูใช้ได้หมดครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-02 10:14:16 By : lamaka.tor
 

 

No. 6



โพสกระทู้ ( 216 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณคุณ Freedom มากๆ ตอนนี้สามารถทำได้แล้ว

แต่อยากถามอีกอย่างคือ

มันติดที่เมื่อuser2 สามารถกดปุ่ม ToolStripButton2กับ ToolStripButton4ได้
ซึ่งจะโชว์ฟอร์มย่อยขึ้นมา ซึ่งถ้ากด ToolStripButton2อยู่ แล้วจะเปลี่ยนไปกด ToolStripButton4 ฟอร์มมันจะซ้อนกันและฟอร์มย่อยมันเลื่อนได้

โดยสิ่งที่ต้องการคือ ถ้ากด ToolStripButton2อยู่ แล้วจะเปลี่ยนไปกด ToolStripButton4
อยากให้โชว์แค่ฟอร์มของปุ่ม ToolStripButton4เท่านั้น ส่วน ฟอร์มของปุ่มToolStripButton2 ก็ปิดไป และฟอร์มย่อยไม่สามารถเลื่อนได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-02 15:47:08 By : peemes101
 

 

No. 7

Guest


Code (VB.NET)
1.Public Class Form3
2.    Private Sub Form3_Move(sender As Object, e As EventArgs) Handles MyBase.Move
3.        If Not (Me.Location.X = 0 And Me.Location.Y = 0) Then
4.            Me.Location = New Point(0, 0)
5.        End If
6.    End Sub
7.End Class


Code (VB.NET)
01.Public Class Form2
02.    Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
03.        OpenFrm()
04.    End Sub
05. 
06.    Private Sub ToolStripButton2_Click(sender As Object, e As EventArgs) Handles ToolStripButton2.Click
07. 
08.    End Sub
09. 
10.    Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles ToolStripButton3.Click
11.        OpenFrm()
12.    End Sub
13. 
14.    Private Sub OpenFrm()
15.        If Not (Me.ActiveMdiChild Is Nothing) Then
16.            Me.ActiveMdiChild.Close()
17.        End If
18. 
19.        Dim frm As New Form3
20.        frm.MdiParent = Me
21.        frm.StartPosition = FormStartPosition.Manual
22.        frm.Location = New Point(0, 0)
23.        frm.Show()
24.    End Sub
25. 
26.    Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
27.        Me.IsMdiContainer = True
28.        If Not (Me.ActiveMdiChild Is Nothing) Then
29.            Me.ActiveMdiChild.Close()
30.        End If
31.    End Sub
32.End Class


ประมาณนี้เอาไปปรับใช้นะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-02 16:49:55 By : Mi
 

 

No. 8



โพสกระทู้ ( 216 )
บทความ ( 0 )



สถานะออฟไลน์


ใช้ไม่ได้อะ โดยมันก็ยังซ้อนกันอยู่ดีและเลื่อนได้อยู่ดี
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-02 22:13:31 By : peemes101
 

 

No. 9

Guest


งั้นเอางี้นะ
Code (VB.NET)
1.Private Sub Form3_Move(sender As Object, e As EventArgs) Handles MyBase.Move
2.        If Not (Me.Location.X = 0 And Me.Location.Y = 0) Then
3.            Me.Location = New Point(0, 0)
4.        End If
5.End Sub


โค้ดนี้ใช้ในฟอร์มลูกนะครับมันจะสั่งเมื่อมีการเลื่อนฟอร์มลูกไปที่ตำแหน่งอื่นให้ไปต้ำแหน่ง 0,0 นะครับ

Code (VB.NET)
1.If Not (Me.ActiveMdiChild Is Nothing) Then
2.            Me.ActiveMdiChild.Close()
3.        End If


โค้ดนี้เอาไว้ในฟอร์มแม่นะครับ มันจะทำการปิดฟอร์มลูกที่ถูกเลือกอยู่ถ้าจะเปิดที่ละฟอร์มใช้อันนี้ก็ได้แต่ถ้าไม่มั่นใจใช้อันล่างนะครับ

Code (VB.NET)
1.For Each frmc As Form In Me.MdiChildren
2.            frmc.Close()
3.Next


โค้ดนี้จะค้นหาฟอร์มลูกทั้งหมดที่อยู่ในฟอร์มแม่แล้วทำการปิดนะครับ

ไม่เข้าใจตรงไหนถามได้นะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-02 22:38:04 By : Mi
 

 

No. 10



โพสกระทู้ ( 216 )
บทความ ( 0 )



สถานะออฟไลน์


ทำได้แล้ว
ขอบคุณคุณGuest มากๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-03 22:10:09 By : peemes101
 

 

No. 11



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-09-04 09:29:29 By : mr.win
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ทำการกำหนดสิทธิ์ในการเลือกใช้ ToolStripButton ไว้ในฟอร์มล็อกอืน ไม่เห็นมีอะไรเกิดขึ้น?
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่