“新闻发布系统”网站制作过程

“新闻发布系统”网站制作过程
“新闻发布系统”网站制作过程

综合实例:“新闻发布系统”网站

通过一个后台功能较为完备的“新闻发布系统”网站的制作,首页效果如图1所示。

图1

内容

利用https://www.360docs.net/doc/1414001281.html,技术开发一个具有后台管理功能的“新闻发布系统”网站,该网站应具备如下功能。

(1)管理员输入用户名和密码,登录成功后可以进入网站后台对新闻进行管理。

(2)管理员能发布新闻,发布的新闻包括标题、内容、提交时间、新闻图片、附件。

(3)管理员能够根据新闻的标题或者新闻的发布时间查找新闻,并能对查找到的新闻进行修改或者删除等操作。

(4)管理员可以修改密码。

(5)用户访问网站首页,可以浏览网站上的所有新闻。

(6)网站要求有较为统一的风格。

网站结构如下图所示。

图2

网站操作流程如下:

(1)用户访问网站首页,出现如图1所示的页面。

(2)单击【更多】链接,出现如图3所示的更多新闻页面。

(3)单击第一条新闻的链接,出现如图4所示的新闻明细页面。

图3

图4

(4)管理员访问如图5所示的登录页面,输入正确的用户名和密码,进入后台管理界面,默认显示的是新闻发布页面,如图6所示。

(5)选择【新闻查询】选项,出现如图7所示的新闻查询页面。

(6)单击【修改】链接,跳转到如图8所示的新闻修改页面。

(7)选择【修改密码】选项,出现如图9所示的修改密码页面。

图5

图6

图7

图8

图9

设计“新闻发布系统”程序前的思考

设计“新闻发布系统”前需要思考如下问题。

(1) 如何合理地设计网站目录结构,使得信息能够被有效地分类,同时访问控制又比较方便。由于需要保存新闻的图片和附件,因此需要在网站根目录下分别创建文件夹来保存这两类文件。另外由于本系统存在“管理员”和“用户”两种角色,因此需要把只有管理员才能访问的页面放到同一文件夹中,统一进行权限设置。

(2) 如何合理地设计数据库字段,使得信息维护和检索都较为方便。由于新闻发布系统涉及到的信息项比较少,因此只需要建一张表来保存新闻标题、新闻内容、附件、图片,另外为了保证每条记录的唯一性,需要在表中建自动编号字段。

(3) 采用怎样的导航方式,使得操作界面清晰,便于用户操作。由于本系统涉及页面较少、目录结构比较简单,因此采用导航控件中的Menu 控件、SiteMapPath 控件、TreeView 控件都可以轻松地实现导航功能,其中M enu 控件使用较为方便。

(4) 采用怎样的设计方法,使得页面风格统一。要使页面风格统一,ASP .NET 提供了多种方法如用户控件、母版页、主题、皮肤。在本案例中,为了统一后台界面的风格,采用母版页技术,为了让控件有统一的风格采用主题技术。

(5) 采用怎样的开发方法,开发效率高,程序又不失灵活性。逻辑较为简单的显示部分采用数据访问控件S qlDataSource 结合具有内置分页功能的G ridView 控件,新闻发布和修改等逻辑较为复杂的部分采用代码实现。

有关“新闻发布系统”程序开发的预备知识

(1) 掌握T extBox、L abel、D ropDownList、I mage、F ileUpload、H yperLink 等常用A SP .NET

标准控件的属性、方法和用法。

(2) 掌握验证控件的知识,特别是RequiredFieldValidator 控件的用法。

(3) 了解导航控件,掌握M enu 控件的用法。

(4) 熟悉S QL Server,能够在S QL Server 中创建数据库和表。

(5) 掌握数据访问控件SqlDataSource 以及数据显示控件G ridView、F ormView 的用法。

(6) 熟悉A DO .NET 编程技术,熟练掌握S qlConnection、SqlCommand、SqlDataReader、DataSet、SqlDataAdapter 等对象的属性、方法以及用法。

(7) 掌握W eb 站点配置文件W eb.config 的设置方法。

(8) 掌握登录控件,特别是Login 、ChangePassword 控件的用法。

(9) 掌握ASP .NET 的5 大对象,特别是Request 对象的用法。

(10) 掌握主题和母版页的使用方法,能够用主题统一的网站风格。

实现“新闻发布系统”的开发过程

1)数据库设计

打开SQL Server企业管理器,新建一个aspnetdb数据库。新建一张news表,设置完字段及数据类型后的表设计器如图10所示。

图10

2)网站目录结构

打开Visual https://www.360docs.net/doc/1414001281.html, 2005开发环境,选择【文件】|【新建】|【网站】命令,在弹出的【新建网站】对话框中,输入网站的保存路径。在【解决方案资源管理器】项目目录上右击,选择【新建文件夹】命令,依次新建3个文件夹,名字分别叫做picture、attachment、admin。

3)创建母版页

(1)在【解决方案资源管理器】项目目录中右击admin文件夹,选择【添加新项】命令,从【添加新项】对话框中选择“母版页”选项,如图11所示,单击【添加】按钮。

图11

(2)打开MasterPage.master页面,选择【布局】|【插入表】命令,弹出【插入表】对话框,在【自定义】选项组中将【行】文本框的值修改为2,【列】文本框的值修改为1,如图12所示。

图12

(3)拖动ContentPlaceHolder1控件到表格的第2行。从工具箱中拖动到表格的第1行,单击控件右上方的箭头,选择【编辑菜单项】选项。在弹出的【菜单项编辑器】对话框中单

击按钮添加根项,Text属性设置为“新闻发布”,NavigateUrl属性设置为“~/admin/AddNews.aspx”。单击按钮添加根项,Text属性设置为“新闻查询”,NavigateUrl 属性设置为“~/admin/QueryNews.aspx”。单击按钮添加根项,Text属性设置为“修改密码”,NavigateUrl属性设置为“~/admin/ChangePassword.aspx”。单击按钮添加根项,Text 属性设置为“首页”,NavigateUrl属性设置为“~/Default.aspx”,如图13所示。

图13

(4)单击菜单控件,将【属性】窗口的BorderStyle属性修改为“Dotted”,将Orientation属性修改为“Horizontal”,将Target属性修改为“_self”,母版页的设计界面如图14所示。

图14

4)发布新闻

(1)在【解决方案资源管理器】项目目录中右击admin文件夹,选择【添加新项】命令,在【添加新项】对话框中输入文件名“AddNews.aspx”,选中【选择母版页】复选框,在【选择母版页】对话框中选择MasterPage.master。

(2)从工具箱中拖动到中心工作区,将【属性】窗口的Text属性修改为“标题”。

(3)从工具箱中拖动一个到中心工作区,将【属性】窗口的ID属性修改为“txtTitle”,清除Text属性的内容。

(4)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为

“rfvTitle”,ControltoValidate属性修改为“txtTitle”,MaxLength属性修改为“50”。

(5)从工具箱中拖动到中心工作区,将【属性】窗口的Text属性修改为“内容”。

(6)从工具箱中拖动一个到中心工作区,将【属性】窗口的ID属性修改为txtContent,TextMode属性修改为“MultiLine”,MaxLength属性修改为“255”。

(7)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为fupPicture。

(8)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为fupAttachment。

(9)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为“btnAdd”,Text属性修改为“添加”。

(10)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为“labMsg”,

清空Text属性的内容,将ForeColor属性修改为“RED”。

最终界面如图15所示。

(11)双击【添加】按钮,进入AddNews.aspx.cs页面,在命名空间的引用部分加入System.Data.SqlClient;。

在“protected void btnAdd_Click(object sender,EventArgs e)”下面的一对花括号{}之间填入如下代码。

try

{//获取连接字符串

string connectionString=ConfigurationManager.ConnectionStrings ["aspnetdbConnectionString"].ToString();

SqlConnection conn=new SqlConnection(connectionString);

conn.Open();//打开连接

SqlDataAdapter oda=new SqlDataAdapter("SELECT title,content,

submitdate,picture,attachment FROM news",conn);

DataSet ds=new DataSet();

oda.Fill(ds,"news");

conn.Close();

DataRow dr=ds.Tables["news"].NewRow();//新建一个数据行

string fileAttention=System.IO.Path.GetExtension(fupPicture.

PostedFile.FileName);//获取图片文件的扩展名

DateTime submitDate=System.DateTime.Now;

string currentDate=submitDate.ToString("yyyyMMddHHmmssFFFF");//格式化日期

string pictureFileName="~/picture/"+currentDate+fileAttention;

//获取附件的扩展名

fileAttention=

System.IO.Path.GetExtension(fupAttachment.PostedFile.FileName);

string attachmentFileName="~/attachment/"+currentDate+fileAttention;

dr["title"]=txtTitle.Text;

dr["content"]=txtContent.Text;

dr["submitDate"]=submitDate.ToString();

if(fupPicture.HasFile)//判断有没有附件

{

dr["picture"]=pictureFileName;

}

if(fupAttachment.HasFile)

{

dr["attachment"]=attachmentFileName;

}

ds.Tables["news"].Rows.Add(dr);//将数据行添加到表中

SqlCommandBuilder ocb=new SqlCommandBuilder(oda);

oda.Update(ds,"news");//提交更改

fupPicture.SaveAs(Server.MapPath(pictureFileName));//上传图片

fupAttachment.SaveAs(Server.MapPath(attachmentFileName));//上传附件

labMsg.Text="新闻发布成功!";

}

catch

{

labMsg.Text="新闻发布失败!";

}

5)显示新闻

(1)在【解决方案资源管理器】项目目录中右击,选择【添加新项】命令,在【添加新项】对话框中输入文件名“Default.aspx”。

(2)拖动一个到中心工作区,在右下角的【属性】窗口中找到ID属性,修改为“sdsQueryNews”。单击控件右上角的箭头,选择【配置数据源】命令,弹出【配置数据源】对话框,单击【新建连接】按钮,弹出【添加连接】对话框,单击【更改】按钮,弹出【更改数据源】对话框,选择“Microsoft SQL Server”选项,单击【确定】按钮,弹出【添加连接】对话框,在【服务器】文本框中输入服务器的名字,选中【SQL Server身份认证】单选按钮,在【用户名】文本框中输入“sa”,在【密码】文本框中输入“123”(123可以根据用户设置的sa的密码的具体情况进行修改),在【选择或者输入一个数据库名】下拉列表框中选择“aspnetdb”选项,单击【下一步】按钮,弹出【配置数据源】对话框,选中【是,将此连接另存为】单选按钮,在下面的文本框中输入“aspnetdbConnectionString”,单击【下一步】按钮,选中【指定自定义SQL语句或存储过程】单选按钮,如图16所示,单击【下一步】按钮,在出现的【SQL语句】文本框中输入“SELECT TOP 10id,title,submitDate FROM news ORDER BY submitDate DESC”,如图17所示。单击

【下一步】按钮,单击【完成】按钮。

图16

图17

(3)从工具箱中拖动到中心工作区,在【属性】窗口中找到DataSourceID属性,修改为“sdsQueryNews”,单击控件右上角的箭头,从弹出的菜单中选择【编辑列】命令,弹出【字段】对话框。

(4)选中HyperLinkField,单击【添加】按钮,将【属性】窗口中的DataNavigateUrlFields

属性修改为“ID”,DataNavigateUrlFormatString属性修改为“NewsDetail.aspx?id={0}”,DataTextField属性修改为“title”,HeaderText属性修改为“标题”,展开ItemStyle属性列表,将Width属性修改为“300”。

(5)选中BoundField,单击【添加】按钮,将【属性】窗口的DataField属性修改为“submitDate”,HeaderText属性修改为“发布日期”,展开ItemStyle,将Width属性修改为“150”,将DataSourceID属性修改为“sdsQueryNews”,如图18所示。

(6)从工具箱中拖动到中心工作区,将【属性】窗口的Text属性修改为“更多…”,将NavigateUrl属性修改为“~/ShowMoreNews.aspx”。

图18

(7)在GridView控件上方输入一行文字“欢迎光临新闻发布系统”。最终界面如图19

图19

6)显示更多新闻

(1)在【解决方案资源管理器】项目目录中右击,选择【添加新项】命令,在【添加新项】对话框中输入文件名“ShowMoreNews.aspx”,选中【选择母版页】单选按钮,在【选择母版页】对话框中选择MasterPage.master。

(2)拖动一个到中心工作区,在右下角的【属性】窗口中找到ID属性,修改为“sdsMoreNews”,在【属性】窗口中找到ConnectionString属性,单击右边的按钮,选择“aspnetdbConnectionString”选项。在【属性】窗口中找到SelectQuery属性,单击右边的按钮,弹出【命令和参数编辑器】对话框,在【SELECT命令】文本框中,输入“SELECT ID,title,submitDate FROM news ORDER BY submitDate DESC”。

(3)从工具箱中拖动到中心工作区,单击控件右上角的箭头,从弹出的菜单中选择【编辑列】命令,弹出【字段】对话框。

(4)选中BoundField,单击【添加】按钮,在【属性】窗口中将DataField属性修改为“ID”,HeaderText属性修改为“编号”,Visible属性修改为“False”。

(5)选中HyperLinkField,单击【添加】按钮,在【属性】窗口中将DataNavigateUrlFields属性修改为“ID”,DataNavigateUrlFormatString属性修改为“NewsDetail.aspx?id={0}”,DataTextField属性修改为“title”,HeaderText属性修改为“标题”,展开ItemStyle属性列表,将Width属性修改为“300”。

(6)选中BoundField,单击【添加】按钮,将DataField属性修改为“submitDate”,HeaderText 属性修改为“发布日期”,展开ItemStyle属性列表,将Width属性修改为“150”。在右下角的【属性】窗口中找到DataSourceID属性,修改为“sdsQueryNews”,AllowPaging属性修改为“True”,PageSize属性修改为“20”。

最终界面如图20所示。

7)查询新闻

(1)在【解决方案资源管理器】项目目录中右击admin文件夹,选择【添加新项】命令,在【添加新项】对话框中输入文件名“QueryNews.aspx”,选中【选择母版页】单选按钮,在【选择母版页】对话框中选择MasterPage.master。

(2)拖动一个到中心工作区,在右下角的【属性】窗口中找到ID属性,修改为sdsQueryNews”,在【属性】窗口中找到ConnectionString属性,单击右边的按钮,选择“aspnetdbConnectionString”选项,在【属性】窗口中找到SelectQuery属性,单击右边的

按钮,弹出【命令和参数编辑器】对话框,在【SELECT命令】文本框中,输入“SELECT ID,title,content,attachment,picture,submitDate FROM news ORDER BYsubmitDate DESC”,在【属性】窗口中找到DeleteQuery属性,单击右边的按钮,弹出【命令和参数编辑器】对话框,在【DELETE命令】文本框中,输入“DELETE FROM newsWHERE(ID=@ID)”,单击【刷新】按钮,从【参数源】下拉列表框中选择“control”选项,从【ControlID】下拉列表框中选择“GridView1”选项,如图21所示。

(3)从工具箱中拖动到中心工作区,在【属性】窗口中将控件的Text属性修改为“查询类别”。

(4)从工具箱中拖动到中心工作区,在右下角的【属性】窗口中找到Items属性,单击属性右边的展开按钮,弹出【ListItem集合编辑器】对话框。单击【添加】按钮,添加一个成员,将成员的Text属性修改为“标题”,Value属性修改为“title”。单击【添加】按钮,添加成员,将Text属性修改为“发布日期”,Value属性修改为“submitDate”。

图21

(5)从工具箱中拖动到中心工作区,在【属性】窗口中将控件的ID属性修改为“btnQuery”,Text属性修改为“查询”。

(6)从工具箱中拖动到中心工作区,在【属性】窗口中将控件的ID属性修改为“txtValue”,清空Text属性的内容。

(7)从工具箱中拖动到中心工作区,在【属性】窗口中找到DataSourceID属性,修改为“sdsQueryNews”,单击控件右上角的箭头,从弹出的菜单中选择【编辑列】命令。选中BoundField选项,单击【添加】按钮,将DataField属性修改为“ID”,HeaderText属性修改为“编号”。选中HyperLinkField选项,单击【添加】按钮,将DataNavigateUrlFields 属性修改为“ID”,DataNavigateUrlFormatString属性修改为“NewsDetail.aspx?id={0}”,DataTextField属性修改为“title”,HeaderText属性修改为“标题”,展开ItemStyle属性列表,将Width属性修改为“300px”。选中BoundField选项,单击【添加】按钮,将DataField属性修改为“submitDate”,HeaderText属性修改为“发布日期”,展开ItemStyle属性列表,将Width属性修改为“150px”。选中CommandField选项,单击【添加】按钮,将HeadText属性修改为“修改”。选中CommandField选项,单击【添加】按钮,将HeadText属性修改为“删除”,取消选中【自动生成字段】复选框。

最终界面如图22所示。

单击【查询】按钮,进入QueryNews.aspx.cs页面,在命名空间的引用部分输入System.Data.SqlClient;。

在“protected void btnQuery_Click(object sender,EventArgs e)”下面的一对花括号{}之间填入如下代码。

string sql="SELECT*FROM news";

if(txtValue.Text.Trim().Length!=0)

sql=sql+"WHERE"+ddlQueryItem.SelectedValue+"like'%"+txtValue.Text

+"%'";

sdsQueryNews.SelectCommand=sql;

sdsQueryNews.Select(DataSourceSelectArguments.Empty);

8)新闻明细

(1)在【解决方案资源管理器】项目目录中右击,选择【添加新项】命令,在【添加新项】对话框中输入文件名“NewsDetail.aspx”。

(2)拖动一个到中心工作区,在右下角的【属性】窗口中找到ID属性,修改为

“sdsNewsDetail”,在【属性】窗口中找到ConnectionString属性,单击右边的按钮,选择“aspnetdbConnectionString”选项。在【属性】窗口中找到SelectQuery属性,单击右边的

按钮,在弹出的【命令和参数编辑器】对话框中,输入“SELECT ID,title,content,attachment,submitDate,picture FROM news WHERE ID=@ID”,如图23所示。单击【刷新参数】按钮,从【参数源】下拉列表框中选择“QueryString”选项,在【QueryStringField】文本框中输入“ID”。

(3)从工具箱中拖动到中心工作区,单击控件右上角的箭头,从弹出的菜单中选择【编辑模板】命令,在【属性】窗口中找到DataSourceID属性,修改为“sdsNewsDetail”。

(4)从工具箱中拖动到FormView控件的模板,将该控件的ID属性修改为“labTitle”,

清除该控件的Text属性,单击labTitle右上角的箭头,选择【编辑DataBindings】命令,弹出如图24所示的【labTitle DataBindings】对话框,选中【自定义绑定】单选按钮,输入“Bind(“title”)”。

图23

图24

(5)从工具箱中拖动一个到FormView控件的模板,在【属性】窗口中将控件的ID 属性修改为“txtContent”,TextMode属性修改为“MultiLine“,MaxLength属性

修改为“255”,单击txtContent右上角的箭头,选择【编辑DataBindings】命令,弹出如图24所示的对话框。选中【自定义绑定】单选按钮,输入“Bind(“content”)”。

(6)从工具箱中拖动一个到FormView控件的模板,选择【编辑DataBindings】命令,选中【自定义绑定】单选按钮,输入“Bind(“picture”)”。

最终界面效果如图25所示。

9)修改新闻

(1)在【解决方案资源管理器】项目目录中右击admin文件夹,选择【添加新项】命

令,在【添加新项】对话框中输入文件名“UpdateNews.aspx”,选中【选择母版页】单选按钮,在【选择母版页】对话框中选择MasterPage.master。

图25

(2)从工具箱中拖动到中心工作区,将【属性】窗口的Text属性修改为“标题”。

(3)从工具箱中拖动一个到中心工作区,将【属性】窗口的ID属性修改为“txtTitle”,清除Text属性的内容。

(4)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为

“rfvTitle”,ControlToValidate属性修改为“txtTitle”,MaxLength属性修改为“50”。

(5)从工具箱中拖动到中心工作区,将【属性】窗口的Text属性修改为“内容”。

(6)从工具箱中拖动一个到中心工作区,将【属性】窗口的ID属性修改为“txtContent”,TextMode属性修改为“MultiLine”,MaxLength属性修改为“255”。

(7)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为“fupPicture”。

(8)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为fupAttachment。

(9)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为“btnSave”,Text属性修改为“保存”。

(10)从工具箱中拖动到中心工作区,将【属性】窗口的ID属性修改为“labMsg”,清空Text属性的内容,将ForeColor属性修改为“RED”。

界面的最终效果如图26所示。

(11)双击【保存】按钮,进入代码页面,在命名空间的引用部分加入using System.Data.SqlClient;。

找到“public partial class UpdateNews:System.Web.UI.Page”,在下面的一对花括号{}之间填入如下代码。

string pictureFilePath,attachmentFilePath;

在“protected void Page_Load(object sender,EventArgs e)”下面的一对花括号{}之间填

入如下代码。

if(!Page.IsPostBack)

{

string connectionString=ConfigurationManager.ConnectionStrings ["aspnetdbConnectionString"].ToString();

SqlConnection conn=new SqlConnection(connectionString);

conn.Open();

string sql="SELECT*FROM news WHERE id="+Request.

QueryString["id"].ToString();

SqlCommand odc=new SqlCommand(sql,conn);

SqlDataReader odr=odc.ExecuteReader();

odr.Read();

txtTitle.Text=odr["title"].ToString();

txtContent.Text=odr["content"].ToString();

pictureFilePath=odr["picture"].ToString();

attachmentFilePath=odr["attachment"].ToString();

odr.Close();

conn.Close();

}

在“protected void btnSave_Click(object sender,EventArgs e)”下面的一对花括号{}之间

填入如下代码。

//修改

string connectionString=ConfigurationManager.ConnectionStrings ["aspnetdbConnectionString"].ToString();

SqlConnection conn=new SqlConnection(connectionString);

conn.Open();

string sql="UPDATE news SET title='"+txtTitle.Text+"',content='"

+txtContent.Text+"'WHERE id="+Request.QueryString["id"].ToString();

SqlCommand odc=new SqlCommand(sql,conn);

odc.ExecuteNonQuery();

conn.Close();

if(fupPicture.HasFile)//图片改变,重新上传图片

{

fupPicture.SaveAs(pictureFilePath);

}

if(fupAttachment.HasFile)//附件改变,重新上传附件

{

fupAttachment.SaveAs(attachmentFilePath);

}

10)登录

(1)在【解决方案资源管理器】项目目录中右击,选择【添加新项】命令,在【添加新项】对话框中输入文件名“login.aspx”。

(2)从工具箱中拖动到中心工作区,单击控件右上角的箭头,选择【自动套用格式】命令,弹出【自动套用格式】对话框,选择“传统型”选项,单击【确定】按钮。

最终界面如图27所示。

11)修改密码

(1)在【解决方案资源管理器】项目目录中右击admin文件夹,选择【添加新项】命令,在【添加新项】对话框中输入文件名“ChangePassword.aspx”。

(2)从工具箱中拖动到中心工作区。单击控件右上角的箭头,选择【自动套用格式】命令,弹出【自动套用格式】对话框,选择“传统型”选项,单击【确定】按钮。设计界面如图28所示。

图27

图28

12)权限设计

https://www.360docs.net/doc/1414001281.html, 2.0中基于角色的安全技术默认使用的是SQL Server 2005 Express特定数据库,通常命名为ASPNETDB.MDF,以文件的形式保存在系统目录App_Data内。如果要使用SQL Server 2000作为默认数据库,需进行“生成SQL Server 2000数据库”和“更改Web.config 配置”的操作。在进行下面的配置之前确定已经使用SQL Server 2000作为默认数据库,否则可按照第13章的操作先进行配置。

选择【网站】|【https://www.360docs.net/doc/1414001281.html,设置】命令,出现【https://www.360docs.net/doc/1414001281.html,应用程序管理】页面,如图29所示。选择【安全】选项卡,在出现的页面中单击【创建用户】链接,如图30所示。输入用户信息,单击【创建用户】按钮,如图31所示,在出现的页面中单击【上一步】按钮。

图29

图30

图31

单击【创建访问规则】链接,在【为此规则选择一个目录】列表框中,单击admin目录,选中【匿名用户】单选按钮,选中【拒绝】单选按钮,单击【确定】按钮,如图32所示。选中【用户】单选按钮,在【用户】文本框中输入创建好的用户名“gmmeichengcai”,单击【允

相关主题
相关文档
最新文档