講師:戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所.

Slides:



Advertisements
Similar presentations
编程加工 信息的. 趣味导入拓展提升大显身手总结反思学以致用 传说古代印度有个国王叫舍罕,他很迷恋棋类,而 宰相达依尔是个聪明的大臣,发明了国际象棋。国王玩 得爱不释手,决定奖赏宰相。达依尔说:陛下,我别无 他求,请你在这张棋盘的第一个格子里赏我 1 粒麦子; 在第二个格子里赏我 2 粒麦子;在第三个格子里赏我.
Advertisements

第二章 VB的编程机制 【授课时间】第3周,第2次课 【授课题目】 2.1 面向对象程序设计概述 2.2 VB中的对象
第10章 处理图形 Visual Basic 程序设计教程.
程式語言(I)- Visual Basic 6.0 第 9 章 結構化程式設計
名以清修 利以义制 绩以勤勉 汇通天下 新晋商理念 李安平
南台科技大學 機械工程系 車輛一甲 學號:4A 學生:黃信成 老師:謝慶存
計算機程式 Visual BASIC 程式設計
第九章 病人卧位与安全的护理.
數碼影像導論 2007年3月16日.
14 繪圖與動畫 [我的小畫家][打磚塊遊戲] 14-1 繪圖的基礎 14-2 滑鼠事件與基本繪圖 14-3 在Bitmap物件繪圖
听完介绍,请你描述一下脑海中的凤城河 新课导入 请你听一段声音:《美在凤城河》
VB教学中游戏化教学案例设计.
网 络 课 程 马 鞍 学 网 络 山 课 程 大 络 网 Visual Basic程序设计 第 一 讲 最容易接受的编程语言
基于VC++的数字图像特效处理系统的设计与实现
Visual Basic程序设计.
第6章 数 组 6.1 一维数组 6.2 控件数组 6.3 二维数组.
第10章 图 形 基 础 10.1 坐标系 10.2 绘图属性 10.3 图形控件 10.4 图形方法 习题十.
第二章 Visual Basic语言基础.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
数组 第 6 章.
第5章 数组 Visual Basic程序设计.
Visual Basic程序设计 第七章 数组
第3章 變數、資料型別與運算子.
程式語言 -Visual Basic 變數、常數與資料型態.
新觀念的 VB6 教本 第13章 表單的圖形輸出系統.
Visual Basic 程序设计教程 机械工业出版社同名教材 配套电子教案 2003 年 6月.
过程 第 7 章.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
第十一讲 VB常用标准控件(2).
國立台灣大學電機工程研究所 Visual Basic 程式設計 國立台灣大學電機工程研究所.
初识Visual Basic.
Visual Basic程序设计基础 计算机科学学院.
第1章 概述 程序设计语言的发展 Visual Basic 6.0简介 Visual Basic 6.0集成开发环境 设计程序的一般步骤.
第4章 程序控制结构与算法基础.
第4章 基本的控制结构 4.1 顺序结构 4.2 选择结构程序设计 4.3 循环结构 4.4 综合实例 退出.
用计算机模拟闪电形成的尝试 By 金秀儒 物理三班 PB
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
程序的基本要素 2018/12/6.
Visual Basic 程序设计 教师:王 杨 电话:
第8章 键盘、鼠标事件和图形 Visual Basic为用户提供了键盘、鼠标事件用于响 应键盘操作和鼠标操作。在Visual Basic中,大多 数控件都有键盘事件和鼠标事件。这一章将讲述 与键盘和鼠标相关的内容,除此之外,还有通常 在鼠标事件中出现的关于绘制图形方面的内容。
程式設計 Visual Basic簡介 週次:1 建國技術學院 資管系 饒瑞佶 2003年9月17日.
第3章 變數、資料型別與運算子 3-1 變數與資料型別的基礎 3-2 變數的命名與宣告 3-3 資料型別 3-4 運算式與運算子
程式語言Visual Basic 傳址與傳值
2 数字图像基础 赵国庆 博士 北京师范大学教育技术学院
Visual Basic 物件導向程式設計簡介.
多媒體概論報告-BMP 組員名稱: 盧彥良-資料蒐集 周誠哲-資料蒐集
新觀念的 VB6 教本 第 6 章 資料型別.
第12章 繪圖與多媒體 12-1 繪圖的基礎 12-2 繪出文字和圖形 12-3 載入與顯示圖形檔案 12-4 建立多媒體的動畫效果
广州市教育局教学研究室编写的 初中《信息技术》第二册第二章 《程序设计初步》
Visual Basic程序设计.
第二章 创建用户界面 本章重点和难点 2.1 基本属性 2.2 创建窗体 2.3 Visual Basic的常用控件 2.4 制作菜单.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
程序设计基础 第 2 章 学习程序设计的基本方法: 多练 模仿.
VB程序设计语言 主讲教师:王 杨.
现代信息技术 微电子技术 计算机技术 传感技术 通信技术 处理、存储信息的技术 传感、采集技术 传递信息的技术
程序基础 2019/4/25.
第二章、第三章错题分析.
程式語言Visual Basic 繪圖方法與顏色控制
林福宗 清华大学 计算机科学与技术系 2008年9月 2019年5月5日 多媒体技术教程 第4章 彩色数字图像基础 林福宗 清华大学 计算机科学与技术系 2008年9月.
Visual Basic 程序设计及应用教程 (6.0版)
计算机应用基础 潍坊学院 计算机工程学院 主讲人:丁素英.
函數應用(二)與自定函數.
程式設計 Visual Basic簡介 週次:4 建國技術學院 資管系 饒瑞佶 2003年10月18日.
1位选手参加了歌唱比赛,评委们的评分如下:
Print方法和函数 2019/5/19.
第八章: 輸入裝置-鍵盤與滑鼠.
多媒體網頁 授課教師:葉生正教授.
Visual Basic 第11章 图形与图象设计
小畫家教學 電子版儲存於 學校網頁/學科資訊/電腦科
Presentation transcript:

講師:戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所

第七章 繪圖世界 繪圖函式 繪圖控制項

Print函式 Print:畫出文字 CurrentX:x座標值 CurrentY:y座標值 For i=1 to 5 print “CurrentX=”;CurrentX, _ “CurrentY=”;CurrentY Next i Form的屬性 ,不用宣告

Print函式(cont’d) 改變CurrentX與CurrentY的值可以改變文字的位置 Randomize Cls For i=1 to 5 CurrentX=Rnd()*Width CurrentY=Rnd()*Height print “test” Next i

座標系統 修改表單(form)的ScaleMode屬性可以改變座標系統 單位大小:表單(Form)的ScaleMode屬性 ScaleWidth, ScaleHeight…… Width, Height…… x軸 可由屬性視 窗修改 (x,y) y軸

座標系統(cont’d) vbUser 由程式設計師自訂 vbTwips 1 由程式設計師自訂 vbTwips 1 每吋1440twips,每公分567twips,每點20twips vbPoints 2 每吋72個point vbPixels 3 像素--螢幕上最小的單位 vbCharacter 4 字元 vbInches 5 英吋 vbMillimeters 6 公厘 vbCentimeters 7 公分

座標系統(cont’d) 屬性值 說         明 使用者自訂。當改變ScaleTop, ScaleLeft, ScaleHeight, ScaleWidth 值時,系統會自動設ScaleMode = 0 1 以Twip為單位,1 Twip = 1/1440英吋(預設值)。 *2 以點(Point)為單位,1點 = 1/72英吋。 3 以像素(Pixel)為單位,像素為螢幕上的基本單位。 4 以字元(Character)為單位,每個字元高1/6英吋,寬1/12英吋。 5 以英吋(inch)為單位。 6 以公厘(mm)為單位。 7 以公分(cm)為單位。

Scale() 語法:[物件.] Scale [(x1 ,y1 )-(x2 ,y2 )] 功能:設定物件內部坐標

Scale() Private Sub Form_Load() Me.Scale (-100, 100)-(300,-100) End Sub (-100,100) (300,-100)

利用Scale** 自訂座標系統 也可經由設定ScaleTop, ScaleLeft, ScaleWidth, ScaleHeight四個屬性來自訂座標 Form1.ScaleTop=-100 Form1.ScaleLeft=-100 Form1.ScaleWidth=400 Form1.ScaleHeight=200

Line函式:畫線 Line (x1,y1) – (x2,y2)[, 顏色][, B[F]] 顏色: 型式: vbRed, vbBlue, vbGreen…… RGB(R,G,B)RGB(0,0,255) 型式: 畫線 畫方框:B 畫實心長方形:BF 框線顏色使用ForeColor

Line函式:畫線(cont’d) Line (0,0)-(50,50) Line (10,30)-(60,60),vbRed Line (30,30)-(70,70),vbGreen,B Line (70,70)-(100,100),vbBlue,BF 可試著改變 座標系統

顏色 QBColor(i) :利用QBColor函數,以條狀圖來顯示顏色代碼 0-15所對應的顏色。 vbBlack 黑 0,0,0 vbBlue 藍 0,0,255 vbCyan 0,255,255 vbGreen 綠 0,255,0 vbYellow 黃 255,255,0 vbWhite 白 255,255,255 vbRed 紅 255,0,0 vbMagenta 255,0,255

顏色 RGB (Red, Green, Blue) : 使用RGB函數設定顏色 紅(R) 綠(G) 藍(B) 白 黃 灰藍 紫 範例

Point 方法 [object.] point (x, y) 傳回指定位置的色彩值: PointColor = Point (500, 500)

Circle函式:畫圓(橢圓) Circle (x,y) ,r [,color][,起始角度,結束角度][,比率] (x,y):圓心 Private Sub form_click() Circle (50, 50), 30 Circle (80, 80), 30 Circle (100, 100), 20, vbRed, , , 2 End Sub 以後的例子使用vbPixel模式

Circle函式:畫弧畫扇(cont’d) Dim PI As Single PI = 3.14159 Circle (50, 50), 30, , -PI/2, -PI Circle (100, 100), 30, , -PI/2, PI Circle (140, 140), 30, , PI/2, -PI 1/2 π π 0 or 2π 3/2 π

PSet:畫點 PSet(x,y),顏色

PSet:畫點 (cont’d) 繪製一條拋物線,其方程式:Y= X2 /10 (X為整數且-10≦X≦10) Private Sub Form_Activate() Scale (-20, 20)-(20, -20) Line (-20, 0)-(20, 0), RGB(0, 0, 255) '畫x軸 Line (0, 20)-(0, -20), RGB(0, 0, 255) '畫y軸 DrawWidth = 3 '設粗細 For x = -10 To 10 PSet (x, x ^ 2 / 10), RGB(255, 0, 0) 'X^2表示X的2次方 Next x End Sub

PSet:畫點 (cont’d)

DrawStyle 在屬性視窗在修改 DrawStyle=vbSolid vbSolid vbDashDotDot 4 vbDash 1 vbDashDotDot 4 vbDash 1 vbInvisible 5 vbDot 2 vbInsideSolid 6 vbDashDot 3 在屬性視窗在修改 DrawStyle=vbSolid

FillStyle vbFSSolid vbUpwardDiagonal 4 vbFSTransparent 1 vbUpwardDiagonal 4 vbFSTransparent 1 vbDownwardDiagonal 5 vbFSHorizontalLine 2 vbCrose 6 vbVerticaLine 3 vbDiagonalCross 7

FillStyle值 說 明 實心 1 透明(預設值) 2 水平線 3 垂直線 4 左上到右下的斜線 5 左下到右上的斜線 6 垂直交叉線 7 對角交叉線

例子 Private Sub form_click() ForeColor = vbBlack FillColor = vbGreen Line (10, 10)-(30, 30), , BF Line (40, 40)-(60, 60), , B FillStyle = vbSolid Line (70, 70)-(90, 90), , B FillStyle = vbHorizontalLine Line (100, 100)-(120, 120), , B ForeColor = vbGreen Line (110, 110)-(130, 130), , B End Sub

小時鐘II Private Sub Timer1_Timer() Cls Dim hr, min, sec As Integer Const PI As Single = 3.14159 Dim x, y As Integer hr = Hour(Time) min = Minute(Time) sec = Second(Time) Circle (100, 100), 90 程式還沒完喔

小時鐘II(cont’d) x = 100 + 60 * Cos((hr - 3) * (-360 / 12) _ * (PI / 180) + min/60 * (-360 / 12) _ * (PI / 180)) y = 100 - 60 * Sin((hr - 3) * (-360 / 12) _ Line (100, 100)-(x, y) x = 100 + 70 * Cos((min - 15) * (-360 / 60) _ y = 100 - 70 * Sin((min - 15) * (-360 / 60) _ Line (100, 100)-(x, y), vbBlue x = 100 + 80 * Cos((sec - 15) * (-360 / 60) _ y = 100 - 80 * Sin((sec - 15) * (-360 / 60) _ Line (100, 100)-(x, y), vbRed End Sub

小時鐘II(cont’d) 12 2π=360 。 1 。 = π/180 θ=-(hr-3)*(360/12)*(π/180) 3 9 r*sin(θ) θ r*cos(θ) 6

Image控制項 Shape 使用控制項的好處: 不會被Cls清除 有分開的訊息 易於管理 etc…… Line Image

Image控制項(cont’d) 屬性: Picture:用對話盒選取檔案 Scretch:是否放大、縮小

Image控制項(cont’d) 支援的圖形格式 GIF .gif Cursor .cur Bitmap .bmp Windows meta file .wmf .dib Enhance WMF .emf Icon .ico JPEG .jpg

Line控制項 屬性: BorderColor:線條顏色 BorderStyle:線條形式 BorderWidth:線條寬度 X1,Y1:線條起始點 X2,Y2:線條終點

BorderStyle vbTransparent vbBSSolid 1 vbBSDash 2 vbBSDot 3 vbBSDashDot vbBSSolid 1 vbBSDash 2 vbBSDot 3 vbBSDashDot 4 vbBSDashDotDot 5 vbBSInsideSolid 6 注意:與DrawStyle相似,但不同

例子 Private Sub form_click() Line1.BorderWidth = 10 Line2.BorderStyle = vbBSDot Line3.Visible = False End Sub

Shape控制項 改變Shape屬性值可以轉變成多種形狀 其它屬性 BorderStyle BorderWidth FillStyle …… vbShapeRectangle vbShapeCircle vbShapeOval vbShapeRoundedRectangle vbShapeSquare vbShapeRoundedSquare

習題 設計一個可以畫出二元二次方程式的圖形,請自行設定PictureBox的座標系統史琪左上角和右下角座標分別為(-100,500)和(100,-500)