對於管理資訊系統而言,許可權是一個很重要的部分。下面我們就開始設計使用管理資訊系統的第一步,登入視窗的製作:
(說明:所有的示例使用一個程式,最後將會成為一個完整的系統,以後的示例都是在上次示例的基礎上增加)
file——>new——>form建立一個新窗體用於登入系統,然後調整窗體大小,並設定窗體的一些屬性:name:frmLogin,borderStyle:bsSingle,biMaximize:False
接著在窗體上放入以後控制元件:
Lable1,Caption:使用者,Name:lblUserName
Lable2,Caption:密碼,Name:lblPassword
ComboBox1,Text:為空,Name:cbbUserName
Edit1,Text:為空,Name:edtPassword
Bevel1,Shape,bsTopLine,name:bvlLine
BitBtn1,Kind:bkOK,Name:btnOK
BitBtn2,Kind:bkCancel,Name:btnCancel
設定完成後儲存,單元檔名為untLogin.pas
窗體及控制元件設定完成後,下面的工作就是如何讓啟動畫面顯示完成好接著出現的不是主窗體,而是登入窗體,如果登入成功,則開啟主窗體,否則登入三次自動退出程式。
首先在專案選項中將自動建立frmLogin窗體取消,然後建立一個單元檔案untGlobal.pas用於存放公共函式庫,在untGlobal中定義一個用於登入的函式,程式碼如下:
Function CanLogin:Boolean;
begin
with TfrmLogin.Create (Application) do
Try
ShowModal;
Result:=gCanLogin;
Finally
Free;
End;
end;
儲存編譯,出錯!因為此需要引用untLogin.pas單元檔案,還需要引用Application所在的單元forms檔案中
uses
Forms;
另外需要在untLogin中定義一個全域性變數,gCanLogin用於判斷登入。
現在OK按鈕的單擊事件中增加如下程式碼,即可正常執行,並在單擊OK按鈕後進入主窗體,如果單Cancle按鈕在關閉程式
gCanLogin:=True;
當然需要在Demo.dpr檔案中修改一下程式碼:
if CanLogin then
begin
Application.CreateForm(TfrmMain, frmMain);
Application.Run;
end
至此,從啟動畫面到登入視窗然後進入主窗體全部完成,接下來我們就完善登入和與資料庫進行關聯,否則這個程式豈不沒有任何意義?
delphi開發日誌--登入視窗
相關文章
- Linux 檢視系統使用者的登入日誌Linux
- delphi xe 好用的日誌框架框架
- 開發日誌5
- 開發日誌8
- 開發日誌7
- 開發日誌10
- 開發日誌9
- Avalonia開發日誌
- 登入觸發器不生效,只在alert日誌中顯示觸發器
- 日誌秘密Windows登入型別知多少(轉)Windows型別
- FLOWERS開發日誌(三)
- FLOWERS開發日誌(一)
- FLOWERS開發日誌(二)
- 全新架構!日誌服務 SLS 自研免登入方案發布架構
- Delphi獲取所有開啟的IE視窗的網頁原始碼網頁原始碼
- java視窗登入介面實現隨機驗證碼Java隨機
- 檢視日誌
- .NET Core開發日誌——Startup
- .NET Core開發日誌——HttpClientFactoryHTTPclient
- 木頭的開發日誌
- FTP登入時一直彈出登入視窗,就算輸入正確的賬號密碼也不能登入FTP密碼
- MYSQL啟用日誌和檢視日誌MySql
- django開發-log日誌的配置Django
- .NET Core開發日誌——Middleware
- alertmanager: 檢視日誌
- mysql開啟檢視慢查詢日誌MySql
- Winform在主窗體載入前彈出登入窗體ORM
- go開發屬於自己的日誌庫-日誌庫優化Go優化
- 檢視mysql日誌及日誌編碼問題MySql
- Haytham個人部落格開發日誌 -- Flask+Vue基於token的登入狀態與路由管理FlaskVue路由
- zaq寫入日誌
- Java 開發中常用的日誌模組Java
- .NET Core開發日誌——依賴注入依賴注入
- 《護士長的工作!》——開發日誌
- Android開發:日誌功能備忘Android
- Qt入門(14)——父視窗部件和子視窗部件QT
- Linux 檢視日誌Linux
- Hyperf日誌檢視元件元件