-
2019-05-14 15:24:46
ps:题目要求使用函数实现: (谷歌和火狐浏览器试过了,没有问题才上传,放宽心)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>使用prompt()方法在页面中弹出提示对话框</title> </head> <body onload="f()"> <script type="text/javascript"> function f() { var showday=prompt("请输入今天是星期几:",""); switch (showday) { case"星期一": alert("新的一周开始了"); break; case"星期二": case"星期三": case"星期四": alert("努力工作"); break; case"星期五": alert("明天就是周末了"); break; default: alert("放松的休息"); break; } } </script> </body> </html>
更多相关内容 -
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
2020-12-01 17:55:28本文主要介绍PyQt界面实现中常用的消息弹出对话框、提供用户输入的输入框、打开文件获取文件/目录路径的文件对话框。学习这三种控件前,先想一下它们使用的主要场景:1、消息弹出对话框。程序遇到问题需要退出需要弹...本文主要介绍PyQt界面实现中常用的消息弹出对话框、提供用户输入的输入框、打开文件获取文件/目录路径的文件对话框。学习这三种控件前,先想一下它们使用的主要场景:
1、消息弹出对话框。程序遇到问题需要退出需要弹出错误提示框 、程序执行可能造成的风险需要弹出警告窗口提示用户是否进一步执行等等。
2、用户输入框。比如常见的让用户选择执行的程序分支、yes/no等等。
3、文件对话框。获取本地文件或者文件夹的完整路径甚至是直接打开文件显示文件内容。
本文主要针对这三种控件的主要场景进行介绍。
QMessageBox:弹出对话框控件
QMessageBox是一种通用的弹出式对话框,用于显示消息,允许用户通过单击不同的标准按钮对消息进行反馈。弹出式对话框有很多类型,如提示、警告、错误、询问、关于等对话框。这些不同类型的QMessageBox对话框只是显示时图标不同,其他功能一样。
QMessageBox类中常用方法
information(QWdiget parent,title,text,buttons,defaultButton):弹出消息对话框。
question(QWidget parent,title,text,buttons,defaultButton):弹出问答对话框
warning(QWidget parent,title,text,buttons,defaultButton):弹出警告对话框
critical(QWidget parent,title,text,buttons,defaultButton):弹出严重错误对话框
about(QWidget parent,title,text):弹出关于对话
参数解释如下:
parent:指定的父窗口控件。
title:表示对话框标题。
text:表示对话框文本。
buttons:表示多个标准按钮,默认为ok按钮。
defaultButton表示默认选中的标准按钮,默认选中第一个标准按钮。
其他方法如下:
setTitle():设置标题
setText():设置正文消息
setIcon():设置弹出对话框的图片
QMessageBox的标准按钮类型
QMessage.Ok 同意操作、QMessage.Cancel 取消操作、QMessage.Yes 同意操作、QMessage.No 取消操作、QMessage.Abort 终止操作、QMessage.Retry 重试操作、QMessage.Ignore 忽略操作
5种常用的消息对话框及其显示效果
(1)消息对话框,用来告诉用户关于提示信息
QMessageBox.information(self, '信息提示对话框','前方右拐到达目的地',QMessageBox.Yes | QMessageBox.No)
(2)提问对话框,用来告诉用户关于提问消息。
QMessageBox.question(self, "提问对话框", "你要继续搞测试吗?", QMessageBox.Yes | QMessageBox.No)
(3)警告对话框,用来告诉用户关于不寻常的错误消息。
QMessageBox.warning(self, "警告对话框", "继续执行会导致系统重启,你确定要继续?", QMessageBox.Yes | QMessageBox.No)
(4)严重错误对话框,用来告诉用户关于严重的错误消息。
QMessageBox.critical(self, "严重错误对话框", "数组越界,程序异常退出", QMessageBox.Yes | QMessageBox.No)
(5)关于对话框
QMessageBox.about(self, "关于对话框", "你的Windows系统是DOS1.0")
上述程序完整代码如下:
# -*- coding: utf-8 -*-
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(431, 166)
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(160, 50, 91, 41))
font = QtGui.QFont()
font.setFamily("YaHei Consolas Hybrid")
font.setPointSize(10)
self.pushButton.setFont(font)
self.pushButton.setObjectName("pushButton")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "对话框"))
self.pushButton.setText(_translate("Form", "弹出对话框"))
class MyMainForm(QMainWindow, Ui_Form):
def __init__(self, parent=None):
super(MyMainForm, self).__init__(parent)
self.setupUi(self)
self.pushButton.clicked.connect(self.showMsg)
def showMsg(self):
QMessageBox.information(self, '信息提示对话框','前方右拐到达目的地',QMessageBox.Yes | QMessageBox.No,QMessageBox.Yes)
QMessageBox.question(self, "提问对话框", "你要继续搞测试吗?", QMessageBox.Yes | QMessageBox.No)
QMessageBox.warning(self, "警告对话框", "继续执行会导致系统重启,你确定要继续?", QMessageBox.Yes | QMessageBox.No)
QMessageBox.critical(self, "严重错误对话框", "数组越界,程序异常退出", QMessageBox.Yes | QMessageBox.No,)
QMessageBox.about(self, "关于对话框", "你的Windows系统是DOS1.0")
if __name__ == "__main__":
app = QApplication(sys.argv)
myWin = MyMainForm()
myWin.show()
sys.exit(app.exec_())
QInputDialog标准对话框控件
QInputDialog控件是一个标准对话框,用于获取用户输入信息,QInputDialog控件可以提供数字、字符串输入或提供下拉列表选择。
针对QInputDialog对话框控件的使用,我们主要考虑2个问题:1、如何在弹出对话框供用户输入,2、如何获取用户输入。
QInputDialog常用方法:
getint():从控件中获得标准整数输入
getDouble():从控件中获得标准浮点数输入
getText():从控件中获得标准字符串的输入
getItem() :从控件中获得列表里的选项输入
说明:QInputDialog控件
完整代码如下:
# -*- coding: utf-8 -*-
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox,QInputDialog
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(382, 190)
font = QtGui.QFont()
font.setPointSize(9)
font.setBold(False)
font.setWeight(50)
Form.setFont(font)
self.GetIntlineEdit = QtWidgets.QLineEdit(Form)
self.GetIntlineEdit.setGeometry(QtCore.QRect(150, 30, 150, 31))
self.GetIntlineEdit.setText("")
self.GetIntlineEdit.setObjectName("GetIntlineEdit")
self.GetstrlineEdit = QtWidgets.QLineEdit(Form)
self.GetstrlineEdit.setGeometry(QtCore.QRect(150, 80, 150, 31))
self.GetstrlineEdit.setObjectName("GetstrlineEdit")
self.GetItemlineEdit = QtWidgets.QLineEdit(Form)
self.GetItemlineEdit.setGeometry(QtCore.QRect(150, 130, 150, 31))
self.GetItemlineEdit.setObjectName("GetItemlineEdit")
self.getIntButton = QtWidgets.QPushButton(Form)
self.getIntButton.setGeometry(QtCore.QRect(50, 30, 80, 31))
self.getIntButton.setObjectName("getIntButton")
self.getStrButton = QtWidgets.QPushButton(Form)
self.getStrButton.setGeometry(QtCore.QRect(50, 80, 80, 31))
self.getStrButton.setObjectName("getStrButton")
self.getItemButton = QtWidgets.QPushButton(Form)
self.getItemButton.setGeometry(QtCore.QRect(50, 130, 80, 31))
self.getItemButton.setObjectName("getItemButton")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "QInputDialog例子"))
self.getIntButton.setText(_translate("Form", "获取整数"))
self.getStrButton.setText(_translate("Form", "获取字符串"))
self.getItemButton.setText(_translate("Form", "获取列表选项"))
class MyMainForm(QMainWindow, Ui_Form):
def __init__(self, parent=None):
super(MyMainForm, self).__init__(parent)
self.setupUi(self)
self.getIntButton.clicked.connect(self.getInt)
self.getStrButton.clicked.connect(self.getStr)
self.getItemButton.clicked.connect(self.getItem)
def getInt(self):
num, ok = QInputDialog.getInt(self, 'Integer input dialog', '输入数字')
if ok and num:
self.GetIntlineEdit.setText(str(num))
def getStr(self):
text, ok=QInputDialog.getText(self, 'Text Input Dialog', '输入姓名:')
if ok and text:
self.GetstrlineEdit.setText(str(text))
def getItem(self):
items=('C', 'C++', 'C#', 'JAva', 'Python')
item, ok=QInputDialog.getItem(self, "select input dialog", '语言列表', items, 0, False)
if ok and item:
self.GetItemlineEdit.setText(str(item))
if __name__ == "__main__":
app = QApplication(sys.argv)
myWin = MyMainForm()
myWin.show()
sys.exit(app.exec_())
关键代码介绍:
QInputDialog.getInt(self, 'Integer input dialog', '输入数字') -> 输入整数对话框
QInputDialog.getText(self, 'Text Input Dialog', '输入姓名:') -> 输入字符串对话框
QInputDialog.getItem(self, "select input dialog", '语言列表', items, 0, False) -> 下拉列表选择对话框
QFileDialog文件对话框
QFileDialog是用于打开和保存文件的标准对话框。使用QFileDialog控件主要考虑2个场景:使用该控件提供用户选择目录或文件,并保存选择目录或文件的路径。简单说就是实现类似word/Notepad++文件打开功能。如下
针对上述场景,QFileDialog控件实现的主要方法:
QFileDialog.getOpenFileName():获取单个文件路径
QFileDialog.getOpenFileNames():获取多个文件路径
QFileDialog.getExistingDirectory():获取文件夹路径
完整代码如下:
# -*- coding: utf-8 -*-
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox,QInputDialog,QFileDialog
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(443, 120)
self.widget = QtWidgets.QWidget(Form)
self.widget.setGeometry(QtCore.QRect(50, 40, 301, 25))
self.widget.setObjectName("widget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.widget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.openFileButton = QtWidgets.QPushButton(self.widget)
self.openFileButton.setObjectName("openFileButton")
self.horizontalLayout.addWidget(self.openFileButton)
self.filePathlineEdit = QtWidgets.QLineEdit(self.widget)
self.filePathlineEdit.setObjectName("filePathlineEdit")
self.horizontalLayout.addWidget(self.filePathlineEdit)
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "QFileDialog打开文件例子"))
self.openFileButton.setText(_translate("Form", "打开文件"))
class MyMainForm(QMainWindow, Ui_Form):
def __init__(self, parent=None):
super(MyMainForm, self).__init__(parent)
self.setupUi(self)
self.openFileButton.clicked.connect(self.openFile)
def openFile(self):
get_directory_path = QFileDialog.getExistingDirectory(self,
"选取指定文件夹",
"C:/")
self.filePathlineEdit.setText(str(get_directory_path))
get_filename_path, ok = QFileDialog.getOpenFileName(self,
"选取单个文件",
"C:/",
"All Files (*);;Text Files (*.txt)")
if ok:
self.filePathlineEdit.setText(str(get_filename_path))
get_filenames_path, ok = QFileDialog.getOpenFileNames(self,
"选取多个文件",
"C:/",
"All Files (*);;Text Files (*.txt)")
if ok:
self.filePathlineEdit.setText(str(' '.join(get_filenames_path)))
if __name__ == "__main__":
app = QApplication(sys.argv)
myWin = MyMainForm()
myWin.show()
sys.exit(app.exec_())
关键代码介绍
QFileDialog.getOpenFileName(self,"选取单个文件","C:/","All Files (*);;Text Files (*.txt)") -> 获取单个指定文件的绝对路径
getOpenFileName()参数说明:
第1个参数:用于指定父组件
第2个参数:对话框标题
第3个参数:对话框显示时默认打开的目录。"."表示当前程序所在目录,“/”表示当前盘下的根目录。
第4个参数:对话框中文件扩展名过滤器。All Files (*);;Text Files (*.txt)表示可以选择所有文件类型或者只显示.txt后缀的文件类型。
QFileDialog.getExistingDirectory(self,"选取指定文件夹","C:/") -> 获取指定文件夹的绝对路径
QFileDialog.getOpenFileNames(self,"选取多个文件","C:/","All Files (*);;Text Files (*.txt)") -> 获取多个指定文件的绝对路径
小结
本文介绍了消息弹出对话框、用户输入对话框以及文件打开对话框的基本使用方法。内容覆盖了这三类控件的基本使用场景。可以开始动手尝试了。。
以上所述是小编给大家介绍的PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
-
Qt学习之路10--Qt标准对话框(消息提示对话框和文件对话框)
2018-08-17 23:46:49分别是消息对话框、打开文件对话框、打印对话框、颜色选择对话框、输入对话框和进度条对话框,由于篇幅,将分次学习标准对话框,本次学习消息提示对话框和文件选择对话框。 因为Qt中所有类型的对话框都继承自...虽然我们可以使用QDialog类进行自定义对话框的开发,但是Qt为了方便开发,提供了几种可复用的对话框类型,它们都继承自QDialog类。
分别是消息对话框、打开文件对话框、打印对话框、颜色选择对话框、输入对话框和进度条对话框,由于篇幅,将分次学习标准对话框,本次学习消息提示对话框和文件选择对话框。
因为Qt中所有类型的对话框都继承自QDialog类,那么所有的对话框都遵循三板斧:定义对象并设置好父窗口及对话框属性、模态调用exec函数(等待用户处理并防止一闪而过)、根据返回值进行下一步数据处理。
消息对话框
消息对话框是应用程序中常用的界面元素,常用于给用户提供消息提示和强制用户进行某些操作。
根据之前三板斧原则接下来就可以直观的试试消息对话框怎么使用。QMessageBox msg(this);//对话框设置父组件 msg.setWindowTitle("Window Title");//对话框标题 msg.setText("This is a message dialog!");//对话框提示文本 msg.setIcon(QMessageBox::Information);//设置图标类型 msg.setStandardButtons(QMessageBox::Ok | QMessageBox:: Cancel | QMessageBox::YesToAll);//对话框上包含的按钮 if(msg.exec() == QMessageBox::Ok)//模态调用 { qDebug() << " Ok is clicked!";//数据处理 }
当按下OK按钮后就会在输出框打印”Ok is clicked!”
除了三板斧的方式使用消息提示对话框以外还可以使用QMessageBox提供的几个静态成员函数得到相同的结果。QMessageBox::question(this,"question","This is a question Dialog!",QMessageBox::Ok | QMessageBox::Cancel,QMessageBox::Cancel); QMessageBox::information(this,"information","This is a information Dialog!",QMessageBox::Ok | QMessageBox::Cancel,QMessageBox::Cancel); QMessageBox::warning(this,"warning","This is a warning Dialog!",QMessageBox::Ok | QMessageBox::Cancel,QMessageBox::Cancel); QMessageBox::critical(this,"critical","This is a critical Dialog!",QMessageBox::Ok | QMessageBox::Cancel,QMessageBox::Cancel); QMessageBox::about(this,"about","This is a about Dialog!");
五个类型分别表示提问型、提示型、警告型、错误型和相关型。
除了about只有三个参数和返回void,其他每个函数都有五个参数并带有一个返回标准按钮StandardButton类型的返回值
- QWidget * parent父组件
- const QString & title:对话框标题
- const QString & text:显示内容
- StandardButtons buttons = Ok:对话框带有的按钮,默认是“Ok”,按钮有很多类型,通过在Qt帮助文档中查询到的结果
在实际使用中可以根据不同用途选择使用不同的标准按钮,如使用多个按钮使用按位或。 - StandardButton defaultButton = NoButton:按下回车键后默认执行的按钮效果,按钮类型也是在标准范围内,默认不做任何按钮选择。
- 返回类型StandardButton:在使用过程中通过接受返回类型的按钮值进行下一步数据处理,和使用三板斧中的根据消息循环的结果判断流程走向一致。
- 有一点注意,对不同类型的消息对话框函数而言默认的图标也是不同的。
文件对话框
文件对话框常用于打开文件和保存文件
使用文件对话框依旧是三板斧原则:定义对话框对象后设置父组件及对话框属性、模态调用exec()、根据返回结果执行后面的流程。
常规的使用文件对话框的方式如下:QFileDialog dlg(this); dlg.setDirectory("G:/D.T.Qt/Notes");//设置默认目录 dlg.setAcceptMode(QFileDialog::AcceptOpen);//允许打开文件 dlg.setFileMode(QFileDialog::ExistingFile );//选择单个文件 dlg.setFilter("Image(*.jpg *.xmp *.bmp);;Text(*.txt)"); if(dlg.exec() == QFileDialog::Accepted) { QStringList fs = dlg.selectedFiles(); for(int i = 0; i < fs.count(); i++) { qDebug() << fs[i]; } }
- 在setAcceptMode中带有一个参数,参数值定义在一个枚举中: enum AcceptMode { AcceptOpen, AcceptSave };分别表示打开文件和保存文件
- 在setFileMode中也带有一个可选枚举参数,定义在enum FileMode { AnyFile, ExistingFile, Directory, ExistingFiles, DirectoryOnly };
- QFileDialog::AnyFile:表示一个文件名,不管文件是否存在
- QFileDialog::ExistingFile:表示单个存在的文件名
- QFileDialog::Directory:表示一个目录名,不管是文件还是目录都会在对话框中被显示出来
- QFileDialog::DirectoryOnly:表示0个或多个已存在的文件名
- setFilter是用来设置文件类型过滤器。
如果需要使用多条过滤规则使用“Image(.jpg .xmp .bmp);;Text(.txt)”格式,在两种过滤条件之间使用两个分号。
可以看到我们之前设置的属性是生效了的,包括默认目录、打开文件、文件类型过滤。
和消息框一样,文件对话框也带有几个静态的成员函数能够实现常规的功能。
String getExistingDirectory ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), Options options = ShowDirsOnly ) QString getOpenFileName ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter = 0, Options options = 0 ) QStringList getOpenFileNames ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter = 0, Options options = 0 ) QString getSaveFileName ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter = 0, Options options = 0 )
例如:
QFileDialog::getOpenFileName(this,"GetFileName Dialog","G:/D.T.Qt/Notes","Text(*.txt)" );
所以,文件对话框的作用就是获取选择的文件对应的文件路径。 -
Android中AlertDialog 点击按钮后不关闭对话框的功能
2021-01-20 10:54:33这里的问题:当我点击确定按钮,也就是 AlertDialog 里的 PositiveButton 的时候,我们需要判断用户是输入是否符合我们的预期,如果不符合通常提示用户重写输入,且不关闭当前的对话框,但上图中点击按钮后会自动的... -
VBA 自定义对话框
2020-08-17 22:09:45今天主要讲讲自定义对话框这一章,中间鸽了一小部分的函数过程,WindowsAPI、连接数据库的内容还没学,后续再更新。 一、inputbox inputbox输入框之前已经用过了,但是除了之前VBA中用的inputbox之外,还有...今天主要讲讲自定义对话框这一章,中间鸽了一小部分的函数过程,WindowsAPI、连接数据库的内容还没学,后续再更新。
一、inputbox
inputbox输入框之前已经用过了,但是除了之前VBA中用的inputbox之外,还有Application对象中的方法,这两个是不一样的。
①VBA中的inputbox函数用法:
Dim str As String str = InputBox("请随便输入一串字符串")
VBA中的inputbox函数完整方法:
InputBox(prompt、[ title ]、[ default ]、[ xpos ]、[ ypos ]、[HelpFile、Context])
prompt:必填,也就是要显示的提示信息,最多1024个字符,回车(chr(13))、换行(chr(10))
title:可选,输入框的标题。不写的话就是上图的“Microsoft Excel”。
default:可选,指定一个初始值,用户输入前就会有个内容
xpos:可选,提示框距离屏幕左侧位置(单位缇:1缇相当于1/15像素,按照现在的屏幕分辨率,起码上千才能到屏幕中间)
ypos:可选,提示框距离屏幕上侧位置(单位缇)
HelpFile:帮助文件
Context:帮助主题
也可以这样操作:
str = InputBox(prompt:="请输入", Title:="提示框", Default:="默认内容")
② EXCEL中inputbox方法用法:
InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextId,Type)
Prompt:必填,也就是要显示的提示信息,可以是字符串、数字、日期、布尔值,当然了,显示的时候都会被强制转换为String类型。
Title:可选,输入框的标题。不写的话就是上图的“Microsoft Excel”。
Default:可选,指定一个初始值,用户输入前就会有个内容
Left:可选,提示框距离屏幕左侧位置(单位磅:1磅相当于1/72 英寸,约等于1/2.8mm,总之按照现在的屏幕分辨率,起码上千才能到屏幕中间)
Top:可选,提示框距离屏幕上侧位置(单位磅)
HelpFile:帮助文件
HelpContextId:帮助主题
Type:可选的参数,返回数据类型的代号
type和之前的函数比是多出来的,参数可以直接写数字,也可以写公式(例如4+4),有以下几种:
值
说明
0
公式
1
数字
2
文本(字符串)
4
逻辑值(True 或 False)
8
Range 对象形式的单元格引用
16
错误值,如 #N/A
64
数值数组
例如需要用户输入单元格区域,可以这样操作:
str = Application.InputBox(prompt:="请输入单元格区域", Type:=8)
type的好处是会自动判断用户输入的数据类型。
二、VBA中的Msgbox
MsgBox (prompt, [ buttons, ] [ title, ] [ helpfile, context ])
prompt:必填,也就是要显示的提示信息,最多1024个字符,回车(chr(13))、换行(chr(10))
buttons :可选。 数值表达式,用于指定要显示按钮的类型。
title:可选,输入框的标题。不写的话就是上图的“Microsoft Excel”。
HelpFile:帮助文件
Context:帮助主题
buttons 参数设置如下:
二、VBA中的Msgbox
值
说明
MsgBox (prompt, [ buttons, ] [ title, ] [ helpfile, context ])
0
仅显示“确定”按钮。
prompt:必填,也就是要显示的提示信息,最多1024个字符,回车(chr(13))、换行(chr(10))
1
显示“确定”和“取消”按钮。
buttons :可选。 数值表达式,用于指定要显示按钮的类型。
2
显示“中止”、“重试”和“忽略”按钮。
title:可选,输入框的标题。不写的话就是上图的“Microsoft Excel”。
3
显示“是”、“否”和“取消”按钮。
HelpFile:帮助文件
4
显示“是”和“否”按钮。
Context:帮助主题
5
显示“重试”和“取消”按钮。
buttons 参数设置如下:
16
显示“关键消息”图标。
vbQuestion
32
显示“警告查询”图标。
vbExclamation
48
显示“警告消息”图标。
vbInformation
64
显示“信息消息”图标。
vbDefaultButton1
0
第一个按钮是默认按钮。
vbDefaultButton2
256
第二个按钮是默认按钮。
vbDefaultButton3
512
第三个按钮是默认按钮。
vbDefaultButton4
768
第四个按钮是默认按钮。
vbApplicationModal
0
应用程序模式;用户在继续在当前应用程序中工作前必须响应消息框。
vbSystemModal
4096
系统模式;在用户响应消息框前,所有应用程序都挂起。
vbMsgBoxHelpButton
16384
在消息框中添加“帮助”按钮。
vbMsgBoxSetForeground
65536
将消息框窗口指定为前景窗口。
vbMsgBoxRight
524288
文本右对齐。
vbMsgBoxRtlReading
1048576
指定文本在希伯来语和阿拉伯语系统中应从右到左显示。
下面两句意思一样
str = MsgBox("请进行选择", 4) str = MsgBox("请进行选择", vbYesNo)
根据上面的各种Msgbox的按钮类型,可以得到以下几种用户点击的返回结果:
常量
值
说明
vbOK
1
确定
vbCancel
2
Cancel
vbAbort
3
中止
vbRetry
4
重试
vbIgnore
5
忽略
vbYes
6
是
vbNo
7
否
三、Excel文件和文件名获取方法
①GetOpenFilename (FileFilter, FilterIndex, Title, ButtonText, MultiSelect)
显示标准的 “打开” 对话框,并获取用户文件名,而不必真正打开任何文件。
FileFilter:可选,指定文件筛选条件的字符串。
FilterIndex:可选,指定默认文件筛选条件的索引号,编号从 1 直到 FileFilter 中指定的筛选器编号。 如果此参数被省略或大于存在的筛选器数,使用的是第一个文件筛选器。
Title:可选,指定对话框的标题。 如果此参数被省略,标题为“打开”。
ButtonText:可选,仅限 Macintosh。
MultiSelect:可选,允许选择多个文件名。 若为 False,仅允许选择一个文件名。
不写参数用法:
Sub demo() Dim fileName As String fileName = Application.GetOpenFilename MsgBox fileName End Sub
此时只能选择一个文件,输出文件路径和名称
指定文件类型用法(比如指定EXCEL和WORD文件),默认选定为word文件,可以多选:
Sub demo() Dim fileName As Variant Dim filt As String Dim msg As String Dim i As Integer msg = "" filt = "excel文件,*.xls*,word文件,*.doc*,所有文件,*.*" fileName = Application.GetOpenFilename(filt, 2, , , True) If IsArray(fileName) Then For i = LBound(fileName) To UBound(fileName) msg = msg + fileName(i) Next Else msg = fileName End If MsgBox msg End Sub
需要注意的是,文件类型的选择上每一个类型要写两个内容,一个是文本提示,一个是后缀名。例如"excel文件,*.xls*,只写了后缀是会报错的。
LBound 函数:返回包含指定的数组维度的最小可用下标的Long数据类型。
UBound 函数:返回包含指定的数组维度的最大可用下标的Long数据类型。
② GetSaveAsFilename (InitialFilename, FileFilter, FilterIndex, Title, ButtonText)
显示标准的“另存为”**** 对话框,获取用户文件名,而无须真正保存任何文件
InitialFilename:指定建议的文件名。 如果省略该参数,Microsoft Excel 使用活动工作簿的名称。
FileFilter:指定文件筛选条件的字符串。 最大长度为 255 个字符,否则该方法返回错误 2015。
FilterIndex:指定默认文件筛选条件的索引号,范围为 1 到 FileFilter 指定的筛选条件数。 如果此参数被省略或大于存在的筛选器数,使用的是第一个文件筛选器。
Title:指定对话框的标题。 如果省略该参数,则使用默认标题。
ButtonText:仅限 Macintosh。
③FileDialog (fileDialogType):获得目录的名称可以使用这个
返回一个 FileDialog 对象,它表示文件对话框的实例。 提示输入目录名称
fileDialogType:必需,文件对话框的类型。共以下几种:
msoFileDialogFilePicker。 允许用户选择文件。
msoFileDialogFolderPicker。 允许用户选择文件夹。
msoFileDialogOpen。 允许用户打开文件。
msoFileDialogSaveAs。 允许用户保存文件。
用法如下:
Sub demo2() Dim str As String With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = "C:\" .Title = "选择一个文件夹" .Show If .SelectedItems.Count = 0 Then MsgBox "啥也没选" Else MsgBox .SelectedItems(1) End If End With End Sub
-
Qt 制作登录对话框
2018-10-24 13:45:36Qt 制作登录对话框 版本说明 版本 作者 时间 备注 0.1 loon 2018.10.24 初步制作出登录对话框 目录 文章目录Qt 制作登录对话框版本说明目录一、需求与目的二、实现方案说明三、实现结果展示四、代码展示... -
21、Java Swing JOptionPane:对话框组件
2020-10-27 10:37:12输入对话框、 选项对话框。 确认对话框 确认对话框显示消息,并等待用户单击“确定”按钮来取消对话框,该对话框不返回任何值。而确认对话框询问一个问题,需要用户单击合适的按钮做出响应。确认对话框返回对应被选... -
实现用户登录时若没有输入用户名,给出用户名不能为空的提示,若没有输入密码,给出密码不能为空的提示
2017-05-25 22:50:53一、实现用户登录时若没有输入用户名,给出用户名不能为空的提示,若没有输入密码,给出密码不能为空的提示。 1、首先在index.jsp里面建立一个form表单,action为当我提交表单时用来处理程序的url地址,我想要在... -
Windows10运行对话框的这些强大功能,你知道多少?
2021-05-22 07:53:12今天我们来分享一些常用的运行命令。一、打开“运行”对话框有三种方法1....二、在“运行”对话框输入相关操作命令1.常用系统文件夹快捷键命令有一些命令可让用户在文件资源管理器中快速打开常用的系统文件... -
SSH(FinalShell)连接UOS/Ubuntu系统连接物理机一直提示输入密码
2021-03-10 10:54:02FinalSehll连接物理机时,点击链接,弹出输入密码对话框,输入正确密码,两秒钟依旧会弹出输入密码提示框,直至超过默认输入次数,报错:too many authentication failures。 此时应该首先保证正确编辑SSH连接: ... -
手把手教你用Java设计并实现一个城市公交查询系统
2020-12-19 10:11:33为了使得我国公交乘客出行及查询有关信息更方便,本文运用JAVA语言技术,Jsp技术,Mysql数据库开发了B/S结构的城市公交查询系统。 该系统顺应了时代发展且具有以下优点:首先,方便乘客的出行,乘客不用询问站牌工作... -
【mfc】用对话框分页实现用户登录
2015-01-03 23:15:25这样的对话框多用于一些需要用户登录才能够进行操作的软件, 下面就用对话框分页来实现用户登录系统 一、基本目标 有如下的程序,输入用户名与密码,如果用户名为admin,密码为123456,那么则成功登录,切换到一个... -
MFC学习笔记(1)--对话框
2017-11-14 09:58:01当它弹出后,本应用程序其他窗口将不再接受用户输入,只有该对话框响应用户输入,在对它进行相应操作退出后,其他窗口才能继续与用户交互。 非模态对话框 它弹出后,本程序其他窗口仍能响应用户输入。非模态... -
jQuery实现聊天对话框
2019-05-19 09:27:28效果图:左下角选择对话的角色,在对话框输入消息点击发送按钮,消息显示在上面界面当中,然后对话框内容被清空。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> ... -
Python_tkinter_消息对话框(messagebox)
2018-12-02 21:52:26消息对话框(messagebox) 用于界面提示成功,失败,警告等相关信息提示框 语法: tkinter.messagebox.FunctionName(title, message [, options]) 参数:FunctionName: 这是相应的消息框函数的名称. title: 这是在... -
【MFC】学习笔记:模态、非模态对话框的创建与弹出过程
2020-07-20 18:32:4501、文章目录 文章目录01、文章目录02、MFC两种基础对话框03、模态对话框的弹出方式04、模态...模态对话框是这样的对话框,当它弹出后,本应用程序其他窗口将不再接受用户输入,只有该对话框响应用户输入,在对它进行相 -
SWT 消息提示框 对话框
2011-08-12 10:20:50SWT对话框 2007-06-21 16:03:06| 分类: Java | 标签: |字号大中小 订阅 关于对话框,首先我要给大家介绍的却是一个swt中的MessageBox(org.eclipse.swt.widgets.Messa -
修改jq weui自定义对话框点击确定按钮不关闭对话框
2019-06-09 23:54:00如果我们在对话框给用户输入值时,当用户输入空值点击确定按钮时,应该给个提示然后让用户继续输入。 如果在方法里使用 return false;,结果用户输入空值时对话框还是会关闭。正确做法如下: 先设置自定义对话框的... -
Android studio4.0.1弹出提示框的两种方法
2020-11-04 09:09:16Android中弹出提示框的两种方法 1.Toast 在底部弹出文本提示框 Toast.makeText(MainActivity.this, "有空输入!\n请重新输入!...使用AlertDialog可以在屏幕中间弹出对话框 AlertDialog textTips = new Ale -
JavaScript从键盘输入三个整数分别存入变量,从小到大进行排序
2020-03-01 21:37:29prompt()方法用于显示可提示用户进行输入的对话框。 这个方法返回用户输入的字符串 所以对输入的数字要进行类型转换 var num1 = +prompt("请输入第一个数:"); var num2 = +prompt("请输入第二个数:"); var num3... -
利用Java实现从键盘输入一个年份,程序输出改年出生的人的生肖
2020-11-08 17:44:30从键盘输入一个年份,程序输出改年出生的人的生肖。 import java.util.Scanner; public class Sesx { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println(“请输入... -
Tkinter设置消息框、对话框
2018-09-12 08:34:29其他一些简单的对话框还可以请求用户输入文本, 整数或数字. 下面是一个典型的对话框使用场景. 在应用程序中经常会有 “退出” 按钮, 如下: 点击 “quit” 按钮会弹出一个确认退出对话框: 我们假设 “退出”... -
C#的文件打开(openFileDialog)与保存(saveFileDialog)对话框使用
2020-04-27 17:43:47window进行文件操作的时候,需要获取文件路径,文件打开openFileDialog和保存saveFileDialog对话框则可以很好的让用户选取打开路径和保存路径。 -
MFC对话框整合
2016-11-24 19:20:34一、创建对话框模板和修改对话框属性 创建对话框主要分两大步,第一,创建对话框资源,主要包括创建新的对话框模板、设置对话框属性和为对话框添加各种控件;第二,生成对话框类,主要包括新建对话框类、... -
Java初学者作业——编写Java程序,实现用户登录验证。
2020-02-19 09:47:34编写Java程序,实现用户登录验证。 若用户名与密码输入正确,则提示“登录成功,欢迎回来!”,若用户名与密码不匹配,则提示“用户名和密码不匹配,请重新输入!”,直到输入正确的用户名和密码为止。 实现思路... -
VBA数据类型判断转化、对话框、空、正则表达式语法
2019-06-06 01:16:54数据类型判断、转化,对话框(弹框输入、提示,返回文件路径、文件夹),空的一些情况,正则表达式语法,其他常用语句。 -
vc 关闭对话框几种方法
2015-07-26 09:55:51vc 关闭对话框几种方法注:以下代码以一个名为CTest6Dlg的对话框类为例 在任务栏隐藏对话框 ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW);使对话框为顶层窗口 SetWindowPos(&this->wndTopMost, 0, 0, 0, 0... -
汇编语言基于对话框的程序实例(一)
2010-07-05 12:18:07例子程序将会显示一个小对话框提示用户输入想找的人名.当用户按下OK钮或回车键,程序将执行一个查询来查找符合条件的记录.当用户完成对数据库的操作时,可以选择"disconnect"命令与数据库断开连接. -
QT-如何在窗口/对话框显示后自动执行指定任务
2021-07-06 12:37:44文章目录QT-如何在窗口/对话框显示后自动执行指定任务一、如何实现在窗口展示出来后,执行某个函数二、如何成功实现判断条件后选择是否关闭窗口 QT-如何在窗口/对话框显示后自动执行指定任务 在QT使用过程中,总会... -
软件测试经典面试题二之用户登录界面
2019-02-05 15:24:45面试中,针对“用户登录”界面设计测试用例这个题目可以说是非常的耳熟能详了!可能你会说,“用户登录”这个测试对象也有点太简单了吧,我只要找一个用户,让他在界面上输入用户名和密码,然后点击“确认”...