在10月上旬將這個程式Share出去之後,有許多老師同好對「九九乘法遊戲板」感到興趣,所以我儘可能地快速Update它到我認為較完整的版本,主要就是加入對戰紀錄分析,我個人認為這可比遊戲本身更重要,也加入了一點音效…
加入可以逐手討論的區塊 |
以程式的角度來說,就是要在遊戲進行中,不斷地留下紀錄,所以我讓程式在啟始時,在使用者的電腦裡檢查並建一個目錄,就在C:\cw_cheesboard,遊戲進行時,程式會截取盤勢畫面及寫下使用者動作的log,最後在程式中增加一個區塊→「對戰分析區」
每一次的對戰會被以時間為標記留下來 |
在這一次的Update中,有鑑於目前螢幕或是單槍都是16:10的比例,且解析度也都不錯,便加出一版使用1200X800的版面,並用KIOSK模式(全螢幕遮蔽),結果老師們也大都認為不錯。
KIOSK模式執行的程式 |
原來現在有一些老師認為原本的教室投影模式(單槍投在布幕上)太不清楚,所以就投在黑板上,這樣還可以用粉筆加上去,算是一種巧思,也有書商的數位教材光碟也提供了所謂的「黑板投影模式」,其實很多年前,我去台北開會或研所上課時,就有教授把畫面直接投在白板上,加上白板筆說明課程,用黑板的話,在目前的教室應是不錯的啦,因為教室配的投影幕都是4:3的居多,早就跟不上時代了,只不過認真的老師,仍免不了要吃些「粉筆灰」…
投影在黑板上有二個重點:1.黑板是狹長型的。2.投影在黑板上對於內容的顏色是有限制的
還有,大紅帽老師希望利用鍵盤來控制程式…,嗯…這些要求對我來說也還算可以啦,不過我也沒太多時間就是了,而且看來他使用雙螢幕在玩(這麼有衝勁的老師現在也不多了),所以我也加了一個螢幕來試程式效果。
這時筆電是主螢幕,另一個就是副螢幕(二個解析度可設為不同) |
發現程式一開始會執行於主螢幕,由於寬長於螢幕解析會被截斷,拖到副螢幕也不會自己恢復 |
加上二行程式就解決了 |
就下指令要求視窗重繪就是了 |
因應黑板投影所使用的顏色大概就幾種 |
我讓數字盤面隨著目前的玩家移動 |
整個程式應還算可行 |
http://163.26.23.3/app/multiplication_chessboard/MultiplicationChessboard_v117.exe
附記:
◆大紅帽老師提供了幾種適合於黑板投影時使用的色彩,我想這應該是經驗法則,而且每個人的看法會有不同的。我把提供的16進位順便轉換成RGB模式表示在下面這個網站可以轉換
http://www.ifreesite.com/color/color-code-converter.htm
紫圓:#9600E1 RGB150,0,255
藍圓:#005AE1 RGB0,90,225
紅圓:#FF0066 RGB255,0,102
綠圓:#368700 RGB54,135,0
黃字:#FFFF00 RGB255,255,0
紅字:#E90080 RGB233,0,128
紫字:#6E00A5 RGB110,0,165
藍字:#00F0B0 RGB0,240,176
◆關於留下玩家每一手的對單紀錄,我用方法是讓程式去截取程式數字盤的影像存成jpg檔,這個部份其實很有程式難度,不過很幸運地,以前在開發論譠有一位厲害的荷蘭工程師SSIDE釋出了涵式作法,這需要dotNet2.0以上的支援,以前我就曾用在我的論文所開發的系統中,現在win7以上都內建.net framework,所以這部份能順利解決。
◆大紅帽老師所需要的鍵盤控制功能,在程式的實作上並不難達成,主要是將程式碼寫在ON key這一個event中就行了,當然得判斷一下使用者是按了哪個鍵?而電腦鍵盤的每個按鍵原本就有特定的代碼能讓程式截取
Decimal
|
Hex
|
Character |
8
|
8
|
Backspace |
9
|
9
|
Tab |
13
|
D
|
Enter |
16
|
10
|
Shift (both) |
17
|
11
|
Ctrl (both) |
18
|
12
|
Alt (both) |
19
|
13
|
Pause |
20
|
14
|
Caps Lock |
27
|
1B
|
Esc |
32
|
20
|
Spacebar |
33
|
21
|
Page Up |
34
|
22
|
Page Down |
35
|
23
|
End |
36
|
24
|
Home |
37
|
25
|
(left arrow) |
38
|
26
|
(up arrow) |
39
|
27
|
(right arrow) |
40
|
28
|
(down arrow) |
45
|
2D
|
Insert |
46
|
2E
|
Delete |
48
|
30
|
0 |
49
|
31
|
1 |
50
|
32
|
2 |
51
|
33
|
3 |
52
|
34
|
4 |
53
|
35
|
5 |
54
|
36
|
6 |
55
|
37
|
7 |
56
|
38
|
8 |
57
|
39
|
9 |
65
|
41
|
A or a |
66
|
42
|
B or b |
67
|
43
|
C or c |
68
|
44
|
D or d |
69
|
45
|
E or e |
70
|
46
|
F or f |
71
|
47
|
G or g |
72
|
48
|
H or h |
73
|
49
|
I or i |
74
|
4A
|
J or j |
75
|
4B
|
K or k |
76
|
4C
|
L or l |
77
|
4D
|
M or m |
78
|
4E
|
N or n |
79
|
4F
|
O or o |
80
|
50
|
P or p |
81
|
51
|
Q or q |
82
|
52
|
R or r |
83
|
53
|
S or s |
84
|
54
|
T or t |
85
|
55
|
U or u |
86
|
56
|
V or v |
87
|
57
|
W or w |
88
|
58
|
X or x |
89
|
59
|
Y or y |
90
|
5A
|
Z or z |
91
|
5B
|
(left Windows key) |
92
|
5C
|
(right Windows key) |
93
|
5D
|
(application key - located between the right Windows and Ctrl keys on most keyboards) |
96
|
60
|
0 (numpad with Num Lock on) |
97
|
61
|
1 (numpad with Num Lock on) |
98
|
62
|
2 (numpad with Num Lock on) |
99
|
63
|
3 (numpad with Num Lock on) |
100
|
64
|
4 (numpad with Num Lock on) |
101
|
65
|
5 (numpad with Num Lock on) |
102
|
66
|
6 (numpad with Num Lock on) |
103
|
67
|
7 (numpad with Num Lock on) |
104
|
68
|
8 (numpad with Num Lock on) |
105
|
69
|
9 (numpad with Num Lock on) |
106
|
6A
|
* (numpad) |
107
|
6B
|
+ (numpad) |
109
|
6D
|
- (numpad) |
110
|
6E
|
. (numpad) |
111
|
6F
|
/ (numpad) |
112
|
70
|
F1 |
113
|
71
|
F2 |
114
|
72
|
F3 |
115
|
73
|
F4 |
116
|
74
|
F5 |
117
|
75
|
F6 |
118
|
76
|
F7 |
119
|
77
|
F8 |
120
|
78
|
F9 |
121
|
79
|
F10 |
122
|
7A
|
F11 |
123
|
7B
|
F12 |
144
|
90
|
Num Lock |
145
|
91
|
Scroll Lock |
186
|
BA
|
; |
187
|
BB
|
= |
188
|
BC
|
, |
189
|
BD
|
- |
190
|
BE
|
. |
191
|
BF
|
/ |
192
|
C0
|
` |
219
|
DB
|
[ |
220
|
DC
|
\ |
221
|
DD
|
] |
222
|
DE
|
' |
沒有留言:
張貼留言