61阅读

从入门到精通-VB2010从入门到精通

发布时间:2017-07-30 所属栏目:protocol

一 : VB2010从入门到精通

很多事情失败的原因不是行动前没有计划, 而是缺少计划前的行动。[www.61k.com]

注意力在结果上

不做准备就是准备失败

开大会时说大话,开小会时说小话

时间可以换取空间,空间可以换取时间

当动则动,当止则止

民主很重要,但群体是不能做决策的

将在外君令有所不受,但一定要付出代价。自己应懂得承受,但人才是不会被埋没的。

人,是留不住的,即使你能把他留住在身边,也不能把他留住在人世。但能留住的是什么?(孔子去了,儒家思想却仍生生不息;61阅读开发频道了。 先创建一个 Label 控件吧,把它托到窗体上, 将 text 属性设置为天极网开发频道如图 5:图5接下来需要输入代码了,双击窗体 Form1。 进入 Public Class Form1 事件。 代码: Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA"(ByVal hwngnd As Integer,ByVal lpOperation As String, ByVal lpFile As String,ByVal lpParameters As String, ByVal lpDirectory As String,ByVal nShowCmd As Integer) As Integer如图 6:图6双击刚才添加的 label

扩展:vb2010入门到精通 / vs2010从入门到精通 / vb2010

vb从入门到精通 VB2010从入门到精通

属性 text:(天极网开发频道)中输入以下代码: Private Sub Label3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label3.Click ShellExecute(0, "open", " www.61k.com ", CStr(0), CStr(0), 1) End Sub End Class OK!全部搞定,按 F5 键运行如图 7 所示,选择相应选项后点击(关闭计算机启动定时器按钮)就可以 了,现在程序将按照你所设定的时间而启动关闭计算机选项。(www.61k.com)qidong = "C:\Documents and Settings\Administrator\「开始」菜单\程序\启动\文件夹卫士.lnk"信息函数(Information functions) -------------------------------------Version 返回版本信息(Windows,NT,DOS,QuickTime,VFW) SysFolder 返回系统文件夹的位置(Windows,System,temp 等等) CpuInfo 得到处理器信息(类型、速度) DiskInfo 得到一个磁盘信息(类型、大小、名称、数量) DiskList 得到已经安装的磁盘的列表 FindApp 查找与指定文件类型相关联的应用程序(例如通过.doc 找到 Word) ReadIni 读取 Windows 的 ini 文件 WriteIni 写入 Windows 的 ini 文件 FlushIni 强制 Windows 在磁盘里生成一个 ini 文件 ReadRegString 读取注册表的字符串类型数据 WriteRegString 往注册表里写入字符串类型数据 ReadRegNumber 在注册表中读取 number 类型的数据 WriteRegNumber 在注册表中写入 number 类型的数据 DeleteReg 删除一个注册项 SoundCard 检查是否安装过声卡 FontInsatlled 检查字体是否已经安装 CommandArgs 返回启动的应用程序的命令行参数 Previous 检查是否有前一例程在运行,即程序是否已经在运行了 ScreenInfo 得到显示器信息(分辨率等) MemoryInfo 得到系统内存信息(总共可用物理内存、swap 文件信息等) Gestalt 返回一个完形值(原文:returns a gestalt value) GestaltExists 检察一个完形是否存在(原文:checks whether a gestalt exists) 以上介绍了 BudAPI 这个 Xtra 的信息函数,他还包括系统函数、文件函数、Windows 函数和注册表函数,下面分别应用列出,在以后的部分中将分别 列举实际例子进行翻译。系统函数(System functions) --------------------------------------DisableDiskErrors 禁止“Drive not ready”错误信息(即禁止“设备尚未准备好” ) DisableKeys 禁止/允许键按下 DisableMouse 禁止/允许鼠标按下 DisableSwitching 禁止/允许任务切换 DisableScreenSaver 禁止/允许屏幕保护程序 ScreenSaverTime 设置屏幕保护程序运行时间 SetScreenSaver 设置屏幕保护程序 SetWallpaper 设置桌面墙纸 SetPattern 设置桌面墙纸显示方式(平铺、居中等) SetDisplay 设置屏幕尺寸和色深 ExitWindows 退出或者重新启动 Windows RunProgram 运行一个外部程序,可以带参数(即运行时是最小化、最大化、隐藏等) WinHelp 显示一个 Windows 帮助文件 Sleep 暂停对 D

vb从入门到精通 VB2010从入门到精通

irector/Authorware 程序的调用 MsgBox 显示一个标准的 Windows 消息对话框 HideTaskBar 显示/隐藏 Windows 的任务栏 SetCurrentDir 改变 DOS 的当前目录 CopyText 复制文本到剪贴板 PasteText 从剪贴板粘贴文本 EncryptText 加密一个字符串 DecryptText 解密字符串 PlaceCursor 定位光标 RestrictCursor 限制鼠标在指定的屏幕区域内移动 FreeCursor 允许鼠标在任意位置移动,即取消对他的限制 SetVolume 设置 wave、midi 和 cd 的音量 GetVolume 得到音量值 InstallFont 安装 TrueType 或 Bitmap 字体 KeyIsDown 检察是否有一个键被按下 KeyBeenPressed 检查一个键是否曾经被按下过 EjectDisk 卸载和弹出一个磁盘 CreatePMGroup 创建程序管理器或者开始菜单程序组 DeletePMGroup 删除程序管理器或者开始菜单程序组 PMGroupList 返回程序管理器或者开始菜单程序组列表 PMSubGroupList 返回开始菜单程序组下的资程序组列表 CreatePMIcon 创建程序管理其或者开始菜单程序组图标 DeletePMIcon 删除程序管理其或者开始菜单程序组图标 PMIconList 返回程序管理器或者开始菜单程序组的图标列表 SystemTime 返回当前系统时间/日期 SetSystemTime 设置系统时间/日期 PrinterInfo 返回已经安装的打印机的信息 SetPrinter 改变默认打印机的设置 RefreshDesktop 刷新桌面图标文件函数(File functions) --------------------------------------FileAge 返回文件存在的时间 FileExists 检查文件是否存在 FolderExists 检查目录是否存在 CreateFolder 创建一个新目录 DeleteFolder 删除一个空目录 RenameFile 重命名文件 DeleteFile 删除一个文件 DeleteXFiles 通过通配符删除多个文件 XDelete 通过通配符删除多个文件,包括子目录下的文件 FileDate 以指定形式返回文件日期 FileSize 返回文件大小 FileAttributes 返回文件属性 SetFileAttributes 设置文件属性 RecycleFile 把文件放到 Windows95/NT 的回收站中 CopyFile 复制文件 CopyXFiles 通过通配符复制多个文件 XCopy 通过通配符复制多个文件,包括其下的子文件夹 FileVersion 返回文件版本 FileList 返回一个文件夹下的文件列表 FolderList 返回一个目录下的目录列表 GetFileName 显示一个文件选择对话框 GetFolder 显示一个目录选择对话框 FindFirstFile 查找第一个符合条件的文件 FindNextFile 查找第二个符合条件的文件 FindClose 结束由 baFindFirstFile 开始的查找 EncryptFile 加密/解密一个文件 FindDrive 搜索所有驱动器以查找指定文件 Shell 打开文件或执行程序 OpenFile 通过与之关联的程序打开该文件(与 Shell 的差别请看实例部分) OpenURL 通过缺省浏览器打开 URL PrintFile 通过与之关联的程序来打印该文件(例如运行 Word 来打印一个 doc 文件) ShortFileName 返回 Windows95 的长文件名在 DOS 下显示的短文件名 TempFileName

vb从入门到精通 VB2010从入门到精通

返回一个临时文件的名字(确信其不再存在) MakeShortcut 创建一个快捷方式/别名 MakeShortcutEx 创建一个 Win95/NT 快捷方式(是对 MakeShortcut 的扩展) ResolveShortcut 返回快捷方式所指向的文件 FileType 返回文件类型 FileCreator 返回文件创建器(即与之关联的程序名称) SetFileInfo 设置文件类型和与之关联的程序 窗口函数(Window Functions) --------------------------------------(注:这里不是 Windows 函数,窗口函数是针对某一个程序窗口的,而 Windows 函数则是针对 Windows 操作系统本身的) WindowInfo 返回 Windows 的信息(状态、大小、位置、标题和类等) FindWindow 通过给出的标题或者类名称查找一个窗口 WindowList 返回指定标题或者类名称的所有窗口的列表(例如打开的多个记事本) ChildWindowList 返回某个窗口的子窗口列表 ActiveWindow 返回当前活动窗口的句柄 CloseWindow 关闭一个窗口 CloseApp 关闭一个应用程序 SetWindowSate 最小化、最大化或者隐藏一个窗口 ActivateWindow 激活指定窗口 SetWindowTitle 设置窗口的标题名称 MoveWindow 移动窗口或改变其大小 WindowToFront 把一个窗口移至最前端 WindowToBack 把一个窗口移至其他窗口后面 WindowDepth 得到一个窗口的 z 坐标值深度 SetWindowDepth 设置一个窗口的 z 坐标值深度 WaitForWindow 等待,直到指定窗口达到指定状态下 WaitTillActive 等待,直到指定窗口被激活 NextActiveWindow 返回下一个被激活的窗口的句柄 WindowExists 检查一个窗口句柄是否有效 GetWindow gets a window that is related to another window SendKeys 向活动窗口发送键盘指令 SendMsg 向窗口发送一个 Windows 消息 AddSysItems 添加系统菜单项,标题栏上的按钮等 RemoveSysItems 如上所述,不过是删除 WinHandle 返回 Director 的主窗口名称 StageHandle 返回 Director 的 Stage 窗口注册信息函数 --------------------------------------About 显示有关 Buddy API 的信息 Register 注册 Buddy API SaveRegistration 保存你的注册信息 GetRegistration 得到注册信息 Functions 返回注册后所能使用的函数的数量

扩展:vb2010入门到精通 / vs2010从入门到精通 / vb2010

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

扩展:vb2010入门到精通 / vs2010从入门到精通 / vb2010

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

vb从入门到精通 VB2010从入门到精通

抱歉,获取内容失败请稍后刷新尝试

扩展:vb2010入门到精通 / vs2010从入门到精通 / vb2010

二 : iOS从入门到精通之 :协议(protocol)

Hello 大家好,我是Stefan,今天给大家带来的时iOS编程中非常重要的一个知识要点:协议

1.1 什么是协议

 1.1.1 协议基本概念

《倚天屠龙记》中,峨眉派的纪晓芙因为爱上了明教光明右使杨逍,违反了峨眉派“不得与魔教人士往来”的条规,最终被灭绝师太一掌毙命,香消玉殒。[www.61k.com]可惜一位绝世佳人,却因为条条框框的门规协定而枉送了性命。

iOS编程中的协议其实也是如此,iOS里面协议不是类,它是一种约定,约定了哪些条款一定要你实现,哪些条款你可以自己选择是不是要实现。而一定要实现的协定就像是峨眉派的条规啦,如果你想学纪晓芙,偷懒不去实现一些协议里的必须实现的条款,那下场就和她一样悲情了。但是它当然比迂腐固化的峨眉严规要自由许多,毕竟iOS编程是现代的产物,也就是因为iOS中的协议提供了可选的条款,这样你可以有很大的自由度,比如像“不得与魔教人士往来”这样霸道的条款你可以写到可选条款里,这样你不想遵守的时候就不遵守,反正它不是必须要实现的条款;这就是iOS的协议。

好了,废话说了挺多,我们来看看iOS里面到底如何来使用协议。

协议声明了其它类可以调用的编程接口,这有点类似与java里的接口,它使得类直接的通信变的简单明了,下图清晰的反应了协议与类之间的概念:

protocol iOS从入门到精通之 :协议(protocol)

图1   Protocol概述

上图中我们可以看到,协议(Protocol)将两个继承关系很远的类联系起来。

一个普通的协议定义如下:

@protocol ProtocolName

 

//这里声明一些方法

 

@end

我们再来看一个饼状图的示例:

                  protocol iOS从入门到精通之 :协议(protocol)

图2  饼状图

       如图,饼状图一般用来显示数据,但是我们如果针对每一个有不同数据的饼状图都写一个类,那工作量就太大了。一种方法是可以通过饼状图的属性来自定义,当然,iOS里给我们提供了另一种较为快捷的方法,那就是用协议。

       协议里面提供了可以提供一系列方法来供我们自定义饼状图,我们称这些协议为数据源协议,如下是上面提到的饼状图可能的数据源协议:

@protocol XYZPieChartViewDataSource//协议名称

 

- (NSUInteger)numberOfSegments;//饼状图的段数

 

-  (CGFloat)sizeOfSegmentAtIndex:(NSUInteger)segmentIndex;//特定段

所占的百分比

 

@optional//可选择性实现的方法

 

-  (NSString *)titleForSegmentAtIndex:(NSUInteger)segmentIndex;//特定段

的标题

 

@end

       协议已经定义了,那么如何来通过协议自定义我们饼状图视图呢?我们需要在饼状图视图的头文件中加入一个属性,通过这个属性来与数据源建立联系,由于数据源可以是任何的类(只要这个类遵守相关数据源协议),所以属性的类型应该是id,后面还可以指定具体的协议名称,代码如下:

@interface XYZPieChartView : UIView//饼状视图,继承自UIView

 

@property (weak) id <XYZPieChartViewDataSource> dataSource;//数据源属性

的类型是id <XYZPieChartViewDataSource>,其中XYZPieChartViewDataSource标定

了这个数据源遵守的协议

 

...

 

@end

注意:数据源属性和代理属性一般需要使用weak来标示属性,原因在于避免循环引用。

 1.1.2协议的方法

协议默认声明在其中的方法为必须实现的方法。也就是说只要遵守了这个协议,那么这些方法必须要去实现。

       但是前面我们也提到了,iOS毕竟是先进社会的产物,它更加的人性化,因此,它还提供了可选的方法,我们可以在只有我们需要的时候才去实现它,这样灵活性就很高了。

       例如,前面的饼状图示例中,我们如果实现了titleForSegmentAtIndex方法,那么将会显示标题,反之则没有,它就是一个可选的方法。

       通过@optional标志我们可以标识可选方法,代码如下:

@protocol XYZPieChartViewDataSource

 

- (NSUInteger)numberOfSegments;

 

- (CGFloat)sizeOfSegmentAtIndex:(NSUInteger)segmentIndex;

 

@optional//可选方法标志

 

- (NSString *)titleForSegmentAtIndex:(NSUInteger)segmentIndex;//可选方法

 

@end

@optional标志下所有的方法都应是可选的方法,除非下面又有其它的标志,比如如果下面出现了@required标志的话,那么从@required开始再下面的方法就不是可选的方法了,而是必须实现的方法。代码示例如下:

@protocol XYZPieChartViewDataSource

 

- (NSUInteger)numberOfSegments;

 

- (CGFloat)sizeOfSegmentAtIndex:(NSUInteger)segmentIndex;

 

@optional//可选的方法标志,直到@required标志,都是可选的方法

 

- (NSString *)titleForSegmentAtIndex:(NSUInteger)segmentIndex;

 

- (BOOL)shouldExplodeSegmentAtIndex:(NSUInteger)segmentIndex;

 

@required//必须的方法标志,以下都是必须的方法

 

- (UIColor *)colorForSegmentAtIndex:(NSUInteger)segmentIndex;

 

@end

上面的示例中定义一个有着三个必须实现的方法和两个可选择实现的方法的协议。

 1.1.3 避免不遵守协议的风险

       前面提到了纪晓芙因为没有遵守峨眉派的门规,或者说协定而命丧灭绝之手,假使她能提前知道这个门规必须遵守,或者有人提醒她不遵守的严重后果,她可能就会为了杨不悔而远走他乡了。当然这都是后话,不过强大先进的iOS考虑到了这点,为了避免悲剧的发生。

       当我们需要调用协议里面的可选方法时,我们不知道遵循协议的类是不是已经实现了这些方法,这时我们可以通过respondsToSelector 方法来判断是否实现了某个方法,代码示例如下:

NSString *thisSegmentTitle;//段标题

 

if ([self.dataSource     respondsToSelector:@selector(titleForSegmentAtIndex:)]) {//判断是否存在

titleForSegmentAtIndex方法

 thisSegmentTitle = [self.dataSource titleForSegmentAtIndex:index];//调用方法

    }

 1.1.4 协议的继承机制

       就像其它Objective-C类可以继承一样,协议也有类似的机制,我们可以使得一个协议遵循另一个协议。

       如果一个协议遵循另一个协议,类似与继承机制,你就需要在协议中提供遵循的协议的方法,一般的,我们在iOS里写协议都回遵循NSObject协议。不过由于一般我们都是使用NSObject的子类,所以我们不需要提供NSObject协议方法的实现,对于遵循协议的形式,示例如下:

@protocol MyProtocol <NSObject>

 

...

 

@end

在上例中,任何遵循了MyProtocol的协议也会自动的遵循NSObject里面声明的方法。

 1.1.5 如何遵循协议

为了表明一个类遵循相关的协议,我们使用尖括号来包含协议,示例代码如下:

@interface MyClass : NSObject <MyProtocol>

 

...

 

@end

一个类的实例如果遵循了相应的协议的话,那它就不仅仅是实现它本身在头文件里声明的方法了,他还要实现协议里声明的方法,当然,他不需要在自己的头文件里再次声明,只需要实现就可以了。

       当然,有时候我们觉得一个协议太少了,这个时候是不是会考虑用多个协议呢?iOS里面我们可以通过逗号吧多个协议隔开,来实现同时遵循多个协议,示例代码如下:

@interface MyClass : NSObject <MyProtocol, AnotherProtocol,

 YetAnotherProtocol>

 

...

 

@end

protocol iOS从入门到精通之 :协议(protocol)(2)

三 : Excel 2010从入门到精通

【视频教程】Excel 2010从入门到精通 excel2010

第一章:Excel2010入门

1-1、Excel能干什么

1-2、Excel2010的新特性

1-3、Excel2010的安装与卸载

1-4、Excel2010的启动与退出

1-5、Excel2010的基本概念

1-6、Excel2010的操作界面

1-7、自定义操作界面

1-8、实战演练-探索Excel选项

第二章:工作表和工作薄的基本操作

2-1、Excel工作簿的基本操作

2-2、Excel工作表的基本操作

2-3、实战演练-创建销售报表

第三章:单元格的基本操作

3-1、选择单元格

3-2、调整单元格

3-3、复制与移动单元格区域

3-4、单元格的操作

3-5、实战演练1-修改应聘登记表

3-6、实战演练2-调整定购记录单中的信息

3-7、实战演练3-制作仓库存货表

第四章:查看报表

4-1、使用视图方式查看

4-2、对比查看数据

4-3、查看其他区域的数据

4-4、实战演练-查看家庭账本

第五章:打印报表

5-1、添加打印机

5-2、设置打印页面

5-3、打印工作表

5-4、实战演练-打印会议签到表

第六章:输入和编辑数据

6-1、Excel的输入技巧

6-2、单元格的数据类型

6-3、快速填充表格数据

6-4、查找和替换

6-5、撤消与恢复

6-6、实战演练1-创建值班表

6-7、实战演练2-快速填充员工考勤表

第七章:单元格和区域的引用

7-1、单元格引用

7-2、使用引用

7-3、单元格命名

7-4、实战演练-制作销售汇总表

第八章:美化表格

8-1、美化表格的基本操作

8-2、设置对齐方式

8-3、设置边框线

8-4、快速设置表格样式

8-5、自动套用单元格样式

8-6、实战演练1-美化家庭账本

8-7、实战演练2-美化物资采购登记表

第九章:使用图表

9-1、图表及其特点

9-2、创建图表的几种方法

9-3、图表的组成

9-4、创建各种类型的图表

9-5、修改图表

9-6、美化图表

9-7、实战演练-绘制月收入对比图

第十章:使用插图

10-1、Excel插图概述

10-2、插入图片

10-3、插入剪贴画

10-4、使用系统提供的形状

10-5、插入艺术字

10-6、使用SmartArt图形

10-7、实战演练-绘制订单处理流程图

第十一章:公式

11-1、公式概述

11-2、快速计算方法

11-3、输入公式

11-4、编辑公式

11-5、实战演练-绘制工程倒计时牌

第十二章:函数

12-1、认识函数

12-2、函数的输入与修改

12-3、文本函数

12-4、日期与时间函数

12-5、统计函数

12-6、财务函数

12-7、数据库函数

12-8、逻辑函数

12-9、查找与引用函数

12-10、其他函数

12-11、用户自定义函数

12-12、实战演练1-制作员工加班统计表

12-13、实战演练2-创建贷款分析表

第十三章:数据的筛选与排序

13-1、数据的筛选

13-2、数据的排序

13-3、实战演练-制作业绩统计表

第十四章:条件格式

[www.61k.com)

14-1、使用条件格式

14-2、突出显示单元格效果

14-3、套用数据条格式

14-4、套用颜色格式

14-5、套用小图标格式

14-6、实战演练1-挑出不及格学生的成绩

14-7、实战演练2-挑出某日的工作量

第十五章:数据有效性

15-1、数据的有效性

15-2、检测无效的数据

15-3、实战演练-限制学生成绩的范围

第十六章:分类汇总和合并计算

16-1、数据的分类汇总

16-2、合并计算

16-3、实战演练1-创建材料采购表

16-4、实战演练2-制作汇总销售记录表

16-5、实战演练3-制作销售统计表

第十七章:使用数据透视表分析数据

17-1、数据透视表与数据透视图

17-2、创建编辑数据

17-3、编辑数据透视表

17-4、数据透视表中数据的操作

17-5、插入数据透视图

17-6、实战演练-制作销售业绩透视表

第十八章:协同办公

18-1、不同文档间的协同

18-2、网络协同

18-3、保护Excel工作薄

第十九章:Excel在会计中的应用

19-1、会计基础知识

19-2、建立会计科目表

19-3、建立会计凭证表

19-4、建立日记账簿

19-5、建立分类账簿

19-6、建立科目汇总表

第二十章:Excel在人力资源中的应用

20-1、设计人力资源招聘流程表

20-2、设计员工基本资料表

20-3、设计员工年假表

20-4、设计出勤管理表

20-5、设计业绩管理及业绩评估系统

20-6、设计薪资管理系统

20-7、设计员工年度考核系统

岂止于会计,比资讯还资讯! 更多资讯请关注会计网微信:www.61k.com

本文标题:从入门到精通-VB2010从入门到精通
本文地址: http://www.61k.com/1058360.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1