|
960111
1. DLL
2. Multithread and Synchronization 1,
2,
3
3. Demo 82, 83, 84, 85, 89, 90
|
960104
1. Printing
2. Tooltips (PreTranslateMessages(),
1, 2,
3,
4)
3. Demo 77, 78, 79, 81
4. Homework
modify lastweek's homework to allow a document object
with different views
add tooltip control and printing capability to it
I'll put a sample program and description later (still working on
it)
這個作業會是最後一個了, 完整的步驟和程式片段
|
951228
1. File
2. Archive
3. taskbar
tray
4. Demo 52, 67, 68, 69, 70, 71
5. Homework
due 96/01/04
請將 Demo 70 及 Demo 71 結合在一起, 你的程式裡應該有兩個 document template,
同樣一種檔案格式 (Demo 69, Demo 70) 所用的格式, 可以用 Form View 瀏覽或是用 Hex View 來瀏覽
|
951221
1. Sprite
2. Font
3. Demo 25, 29, 35, 36, 37, 38, 39, 50, 51, 57 |
951214
1. Double buffer 1,
2
2. Demo 18,19,20,21,22,23,24,32,40,41,42
3. Homework: 請依循 MFC
中製作 double buffer 的要點, 撰寫一個 CDoubleBufferScrollView 類別,提供 double
buffer 的功能, 並且製作那個圓與方塊的簡單程式
(你只需要製作最簡單的滑鼠點按來移動圓的動畫就可以了)
|
951207
1. Dialog box and DDX 13DialogBox.rar
2. CImage class
3. Demo 12, 13, 14, 15, 16, 17
4. Homeworks: due next week
-
follow chapter 12 example, create an extra pane
on the status bar
-
Use CFrameWnd::SetMessageText() to change the message
on pane 0 of the status bar
-
Use CStatusBar::SetPaneText() and a timer object
to make the new pane a ticking digital clock with hh:mm:ss
|
951130
1. Bitmap 11BitBlt.rar
2. ScrollView 12ScrollView.rar
3. CBitmap class
4. Demo 11 (control bar)
5. Homeworks: due next week (email me the project)
-
follow Chapter 11 example, construct a toolbar with
custumized combobox on it.
-
Handle the user selection and print a message on
the client area
-
-
|
951123
1. Mapping Mode 10MappingMode1
Physical coordinate (Device coordinate) -- Logical coordinate
Screen coordinate
Client coordinate
Window coordinate
Active X control (server program) setup logical coordinate
(window origin, window extension)
Active X container setup device coordinate
(viewport origin, viewport extension)
2. Demo 10 (toolbar)
3. Homeworks (need not turn in): try demo 10, mapping
mode, preview bitmap copying |
template method design pattern
CWinApp : public CWinThread
CMyProgramApp : public CWinApp
Subclassing
Superclassing
|
951109
1. WM_SIZE
2. Device Context
3. Demo 7, 8, 9
WM_RBUTTONUP, WM_NCRBUTTONUP, WM_CONTEXTMENU
|
951102
1. Scribble
2. Collection Classes
3. Basic Graphic API (Move, Line, Rectangle, Ellipse,
RoundRect, Pie, Chord)
|
00MFCSDI
00MFCMDI (explaining all windows, menus,
file dialogs)
00MFCDlg (demo dialog based applications,
basic DDX mechanisms, message handling mechanisms)
1. MFC 程式的基本運作機制
MFC equivalent
2. MFC Collection classes
3. Part 1 of the editor
|
951019
0. Electronic books
a. Petzold Charles.Petzold.-.Programming.Windows.5th.Edition.(MS.Press).iso
a1. Petzold ProgrammingWindows6_Petzold (中文)
b. forge32 forgers-win32-tutorial-pdf.zip
c. Proise MSPress-ProgrammingWindowsWithMFC-2ed.chm
c1.Proise ProgrammingWindowsWithMFC2_Prosise (中文)
d. 侯俊傑 深入淺出 MFC 2nd Ed
1. Go through event handling procedure again
user/prog generate event =>
user32 =>
target thread envent queue =>
target thread event loop =>
dispatch message (user32) =>
target window procedure (arguments, handling event)
2. Your single thread program can process only one event at a time
3. Explaining WinMain arguments
4. Q&A
5. Sending other program a message
6. WM_LBUTTONDOWN message
|
951012
1. describe how to use TRACE macro and dbwin32
in both MFC environment and WIN32 environment
2. go through windows events
a. using spy++ to see mouse, keyboard events
b. make an win32 app and see the wm_command events
c. explain the event queue model
d. explain postmessage and sendmessage
e. show wm_settext message
f. show MSG structure
g. show event handling and DefWindowMessage
h. show WM_CREATE WM_CLOSE WM_DESTROY messages
a. WIN32 app
b. ExitWindowsEx API
c. Sleep API
d. SetTimer and KillTimer API with static timerid variable
e. menu and event handling
f. Create a dialog box template
g. copy aboutbox window procedure to InputDialog window procedure
h. Edit control
i. GetDlgItem
j. GetWindowText with a global variable
k. DialogBox
l. GetSystemTime
|