vb.net – 当点击“btnLogin”时,我的表单会减小.
发布时间:2020-12-17 00:19:25 所属栏目:大数据 来源:网络整理
导读:在我的登录表单上,每当点击“btnLogin”时,似乎“frmLogin”和“frmMenu”的宽度和长度都会减少.这是什么原因?你怎么解决它?我不知道这是否与代码有关,但无论如何我都会链接它.谢谢. Imports System.Data.OleDbPublic Class frmLogin Public AdminDetails
在我的登录表单上,每当点击“btnLogin”时,似乎“frmLogin”和“frmMenu”的宽度和长度都会减少.这是什么原因?你怎么解决它?我不知道这是否与代码有关,但无论如何我都会链接它.谢谢.
Imports System.Data.OleDb Public Class frmLogin Public AdminDetails As Boolean Public SuccessfulLoginUsername As String Dim provider As String Dim dataFile As String Dim connString As String Dim myConnection As OleDbConnection = New OleDbConnection Private Sub btnLogin_Click(sender As Object,e As EventArgs) Handles btnLogin.Click provider = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" dataFile = Application.StartupPath & "SAC1 Database.mdb" connString = provider & dataFile myConnection.ConnectionString = connString Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM [tblUsers] WHERE [Username] = '" & txtUsername.Text & "' AND [Password] = '" & txtPassword.Text & "'",myConnection) myConnection.Open() Dim dr As OleDbDataReader = cmd.ExecuteReader Dim userFound As Boolean = False Dim FirstName As String = "" Dim LastName As String = "" While dr.Read userFound = True FirstName = dr("FirstName").ToString LastName = dr("LastName").ToString End While If userFound = True Then If txtUsername.Text = "admin" And txtPassword.Text = "password" Then AdminDetails = True SuccessfulLoginUsername = txtUsername.Text Else AdminDetails = False SuccessfulLoginUsername = txtUsername.Text End If frmMenu.Show() frmMenu.lblTitle.Text = "Welcome " & FirstName & " " & LastName frmMenu.lblGreeting.Text = "Howdy! " & FirstName & " " & LastName & ". What would you like to do today?" Else MsgBox("Sorry,username or password not found",MsgBoxStyle.OkOnly,"Invalid Login") End If myConnection.Close() End Sub Private Sub btnExit_Click(sender As Object,e As EventArgs) Handles btnExit.Click Close() End End Sub Private Sub linklblCreateAccount_LinkClicked(sender As Object,e As LinkLabelLinkClickedEventArgs) Handles linklblCreateAccount.LinkClicked frmCreateAccount.Show() End Sub End Class
这可能是DPI意识的问题.具体来说,您的应用程序未声明为DPI识别,并且当您的代码访问Microsoft.ACE.OLEDB提供程序时,其进程将设置为支持DPI.这是我不久前偶然发现的东西,但我从未见过有人报告过它.
简单的解决方案是让您的应用程序了解DPI. >从“项目”菜单中,选择“您的项目名称” – 属性. <!-- <application xmlns="urn:schemas-microsoft-com:asm.v3"> <windowsSettings> <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware> </windowsSettings> </application> --> 如果找到此块,则删除第一行和最后一行(“<! - ”和“ - >”).如果它不存在,请在文件中的最后一个标记之前添加这些行. >重建您的申请. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |