亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 多個(gè)文件的工程---增強(qiáng)poppad.txt

?? 會(huì)變語言實(shí)現(xiàn)的一些程序
?? TXT
?? 第 1 頁 / 共 4 頁
字號:
多個(gè)文件的工程---增強(qiáng)POPPAD 
相關(guān)的例子:下載>>>  作者:Zoologist 于2008-8-17上傳   

--------------------------------------------------------------------------------

我們之前編寫的程序都是非常簡單的單文件,下面的程序是稍微復(fù)雜的結(jié)構(gòu):一個(gè)主程序和若干個(gè)完成不同功能的程序。

首先,還是選擇建立Win32 EXE 程序。



然后給工程命名,這幾步同普通的程序沒有差別。



建立成功之后,寫好主程序,再逐步添加其余各個(gè)文件,第一種方法是,從新文件中創(chuàng)建,



將會(huì)新建出來一個(gè)空白文檔:



在新建的文檔中選擇參數(shù)設(shè)置:



設(shè)置為下面這個(gè)樣子:



之后,新建立的文件就可以先編譯為OBJ文件,再同主文件一起編譯生成需要的結(jié)果了。



如果你已經(jīng)有了文件,打算加入工程中,請選擇“導(dǎo)入文件”



選擇你想加入的文件即可,加入新文件之后,按照上面提到的,設(shè)置相同的參數(shù)即可。

增強(qiáng)POPPAD


當(dāng)我們向前面一期POPPAD中增加菜單時(shí),還有幾個(gè)標(biāo)準(zhǔn)菜單項(xiàng)沒有做完。現(xiàn)在我們已經(jīng)準(zhǔn)備好在POPPAD中加入打開文件、讀入文件以及在磁盤上儲(chǔ)存編輯過文件的功能。在處理中,我們還將在POPPAD中加入字體選擇和搜索替換功能。

實(shí)作POPPAD3程序的文件如程序11-6所示。


程序11-6 POPPAD3 

        
POPPAD.ASM
        
;MASMPlus 代碼模板 - 普通的 Windows 程序代碼

.386
.Model Flat, StdCall
Option Casemap :None

Include windows.inc
Include user32.inc
Include kernel32.inc
Include gdi32.inc

includelib gdi32.lib
IncludeLib user32.lib
IncludeLib kernel32.lib
include macro.asm
	
	WinMain PROTO :DWORD,:DWORD,:DWORD,:DWORD
	AboutDlgProc PROTO :HWND,:UINT,:WPARAM,:LPARAM
;Functions in POPFILE.ASM
PopFileInitialize       PROTO :HWND
PopFileOpenDlg          PROTO :HWND, :PTSTR, :PTSTR
PopFileSaveDlg          PROTO :HWND, :PTSTR, :PTSTR
PopFileRead             PROTO :HWND, :PTSTR
PopFileWrite            PROTO :HWND, :PTSTR

;Functions in POPFIND.ASM
PopFindFindDlg          PROTO :HWND
PopFindReplaceDlg       PROTO :HWND
PopFindFindText         PROTO :HWND,:DWORD, :DWORD
PopFindReplaceText      PROTO :HWND,:DWORD, :DWORD
PopFindNextText         PROTO :HWND,:DWORD
PopFindValidFind        PROTO 

;Functions in POPFONT.ASM
PopFontInitialize	PROTO :HWND
PopFontChooseFont	PROTO :HWND
PopFontSetFont		PROTO :HWND
PopFontDeinitialize 	PROTO

;Functions in POPPRNT.ASM
;BOOL PopPrntPrintFile (HINSTANCE, HWND, HWND, PTSTR) ;

	EDITID   equ	1

IDC_FILENAME     equ     1000
IDM_FILE_NEW     equ     40001
IDM_FILE_OPEN    equ     40002
IDM_FILE_SAVE    equ     40003
IDM_FILE_SAVE_AS equ     40004
IDM_FILE_PRINT   equ     40005
IDM_APP_EXIT     equ     40006
IDM_EDIT_UNDO    equ     40007
IDM_EDIT_CUT     equ     40008
IDM_EDIT_COPY    equ     40009
IDM_EDIT_PASTE   equ     40010
IDM_EDIT_CLEAR   equ     40011
IDM_EDIT_SELECT_ALL equ  40012
IDM_SEARCH_FIND  equ     40013
IDM_SEARCH_NEXT  equ     40014
IDM_SEARCH_REPLACE  equ   40015
IDM_FORMAT_FONT   equ    40016
IDM_HELP         equ     40017
IDM_APP_ABOUT    equ     40018
	

.DATA
	UNTITLED    db "(untitled)",0
	szAppName   db "PopPad",0
        bNeedSave   BOOL	FALSE
        FINDMSGSTRING  db	"commdlg_FindReplace",0
        nullStr	    db	0
.DATA?
        hwndEdit    HWND	?
        hInst       HINSTANCE	?
        iOffset     DWORD	?
        szFileName  db	MAX_PATH	dup(?)
        szTitleName db	MAX_PATH	dup(?)
        messageFindReplace UINT	?        
        hDlgModeless HWND  	?
.CODE
START:

	invoke GetModuleHandle,NULL
	invoke WinMain,eax,NULL,NULL,SW_SHOWDEFAULT
	invoke ExitProcess,0

WinMain proc hInstance:DWORD,hPrevInst:DWORD,szCmdLine:DWORD,iCmdShow:DWORD
	LOCAL msg  :MSG
	local hwnd :HWND
	LOCAL wndclass   :WNDCLASSEX
	LOCAL hAccel:HACCEL
	
	mov wndclass.cbSize,sizeof WNDCLASSEX	
	mov wndclass.style,CS_HREDRAW or CS_VREDRAW	
	mov wndclass.lpfnWndProc,offset WndProc

	mov wndclass.cbClsExtra,0
	mov wndclass.cbWndExtra,0
	
	push hInstance
	pop wndclass.hInstance
	
	invoke LoadIcon,NULL,IDI_APPLICATION
	mov wndclass.hIcon,eax	
	
	invoke LoadCursor,NULL,IDC_ARROW
	mov wndclass.hCursor,eax	
	
	invoke GetStockObject,WHITE_BRUSH
	mov wndclass.hbrBackground,EAX
	
	mov wndclass.lpszMenuName,offset szAppName
	mov wndclass.lpszClassName,offset szAppName

	mov wndclass.hIconSm,0
	
	invoke RegisterClassEx, ADDR wndclass
	.if (EAX==0)
		 invoke MessageBox,NULL,CTXT("This program requires Windows NT!"),addr szAppName,MB_ICONERROR 		
		 ret
	.endif
        
	invoke CreateWindowEx,
					NULL,
					ADDR szAppName, 					;window class name
					ADDR szAppName, 
					WS_OVERLAPPEDWINDOW,					;window style
					CW_USEDEFAULT,						;initial x position
					CW_USEDEFAULT,						;initial y position
					CW_USEDEFAULT, 						;initial x size
					CW_USEDEFAULT,						;initial y size
					NULL,							;parent window handle
					NULL,							;window menu handle
					hInstance,							;program instance handle
					szCmdLine										;creation parameters
	mov hwnd,eax
	
	invoke ShowWindow,hwnd,iCmdShow
	invoke UpdateWindow,hwnd
	
	StartLoop:
		invoke GetMessage,ADDR msg,NULL,0,0
			cmp eax, 0
			je ExitLoop
				invoke IsDialogMessage,hDlgModeless,addr msg
				.if	(eax!=TRUE)||hDlgModeless==NULL
					invoke	TranslateAccelerator,hwnd, hAccel,addr msg
					.if	(eax!=TRUE)
						invoke TranslateMessage, ADDR msg
						invoke DispatchMessage,  ADDR msg
					.endif
				.endif	
			jmp StartLoop
	ExitLoop:
	
	mov eax,msg.wParam
	ret

WinMain endp

DoCaption	proc hwnd:HWND,szTName:DWORD
	LOCAL	szCaption[64 + MAX_PATH]:TCHAR
	mov	esi,szTName
	mov	al,[esi]
	.if	al == FALSE
           	mov	ebx,offset UNTITLED 
        .else	
           	mov	ebx,szTName
        .endif
        invoke	wsprintf,addr szCaption, CTXT("%s - %s"),addr szAppName,ebx
        invoke	SetWindowText,hwnd, addr szCaption
        ret
DoCaption	endp

OkMessage	proc	hwnd:HWND,szMessage:DWORD,szTName:DWORD
        LOCAL	szBuffer[64 + MAX_PATH]:TCHAR 
        mov	esi,szTName
        mov	al,[esi]
        .if	al == FALSE
           	mov	ebx,offset UNTITLED 
        .else	
           	mov	ebx,szTName
        .endif           
        invoke	wsprintf,addr szBuffer,szMessage,ebx
	invoke	MessageBox,hwnd,addr szBuffer,addr szAppName, MB_OK or MB_ICONEXCLAMATION
        ret
OkMessage	endp

AskAboutSave	proc hwnd:HWND , szTName:DWORD
	LOCAL	szBuffer[64 + MAX_PATH]:TCHAR
        LOCAL	iReturn:DWORD

        mov	esi,szTName
        mov	al,[esi]
        .if	al ==FALSE
           	mov	ebx,offset UNTITLED 
        .else	
           	mov	ebx,szTName
        .endif
           
        invoke	wsprintf,addr szBuffer, CTXT ("Save current changes in %s?"),ebx
        invoke	MessageBox,hwnd,addr szBuffer,addr szAppName,MB_YESNOCANCEL or MB_ICONQUESTION
        mov	iReturn,eax
        .if (iReturn == IDYES)
          	invoke	SendMessage,hwnd, WM_COMMAND, IDM_FILE_SAVE, 0
               .if	(eax==FALSE)
                    	mov	eax,IDCANCEL
                    	mov	iReturn,eax
		.endif
	.endif
	mov	eax,iReturn 
        ret
AskAboutSave	endp
        
PopPrntPrintFile	proc	hInstPRN:HINSTANCE,hwnd:HWND,hwndEditPRN:HWND, pstrTitleName:PTSTR
	mov	eax,FALSE
	ret
PopPrntPrintFile	endp

WndProc proc hwnd:DWORD,message:DWORD,wParam :DWORD,lParam :DWORD
         LOCAL	iSelBeg, iSelEnd, iEnable:DWORD
         LOCAL	pfr:DWORD	;LPFINDREPLACE
;LPFINDREPLACE 是指向如下結(jié)構(gòu)體的指針    
;FINDREPLACEA STRUCT
;  lStructSize       DWORD      ?
;  hwndOwner         DWORD      ?
;  hInstance         DWORD      ?
;  Flags             DWORD      ?
;  lpstrFindWhat     DWORD      ?
;  lpstrReplaceWith  DWORD      ?
;  wFindWhatLen       WORD      ?
;  wReplaceWithLen    WORD      ?
;  lCustData         DWORD      ?
;  lpfnHook          DWORD      ?
;  lpTemplateName    DWORD      ?
;FINDREPLACEA ENDS

	.if message==WM_CREATE
		mov	esi,lParam
		mov	eax,[esi+4]
		mov	hInst,eax
               ;Create the edit control child window
        
                invoke  CreateWindowEx,NULL,CTXT ("edit"), NULL,
                        WS_CHILD or WS_VISIBLE or WS_HSCROLL or WS_VSCROLL or \
                        WS_BORDER or ES_LEFT or ES_MULTILINE or \
                        ES_NOHIDESEL or ES_AUTOHSCROLL or ES_AUTOVSCROLL,
                        0, 0, 0, 0,
                        hwnd, EDITID, hInst, NULL
		mov	hwndEdit,eax

                invoke	SendMessage,hwndEdit, EM_LIMITTEXT, 32000, 0
        
                ;Initialize common dialog box stuff
        
                invoke PopFileInitialize,hwnd
                invoke PopFontInitialize,hwndEdit
                invoke RegisterWindowMessage,addr	FINDMSGSTRING
                mov	messageFindReplace,eax
                invoke DoCaption,hwnd,addr szTitleName

	        xor	eax,eax
	        ret
	.elseif message ==  WM_SETFOCUS
		invoke	SetFocus,hwndEdit
                xor	eax,eax
	        ret	        
	.elseif message ==  WM_SIZE
		mov	eax,lParam
		and	eax,0FFFFh
		mov	ebx,lParam
		shr	ebx,16
                invoke	MoveWindow,hwndEdit, 0, 0, eax,ebx, TRUE
                xor	eax,eax
	        ret
	.elseif message == WM_INITMENUPOPUP
        	mov	eax,lParam
		.if	eax==1      ; Edit menu
                                    ; Enable Undo if edit control can do it
                        invoke	 SendMessage,hwndEdit, EM_CANUNDO, 0, 0            
                        .if	eax==FALSE
                        	mov	ebx,MF_GRAYED
                        .else
                        	mov	ebx,MF_ENABLED
                        .endif
                        invoke	EnableMenuItem,wParam, IDM_EDIT_UNDO,ebx
                        
        			    ; Enable Paste if text is in the clipboard
        		invoke	 IsClipboardFormatAvailable,CF_TEXT
                        .if	eax==FALSE
                        	mov	ebx,MF_GRAYED
                        .else
                        	mov	ebx,MF_ENABLED
                        .endif        		
                        invoke	EnableMenuItem,wParam, IDM_EDIT_PASTE,ebx
                        	    ; Enable Cut, Copy, and Del if text is selected
                        invoke  SendMessage,hwndEdit, EM_GETSEL, addr iSelBeg,addr iSelEnd

                        .if	iSelEnd==FALSE

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本亚洲天堂网| 在线不卡中文字幕播放| 一本色道久久综合精品竹菊| 6080国产精品一区二区| 国产精品福利电影一区二区三区四区 | 偷窥少妇高潮呻吟av久久免费| 六月丁香综合在线视频| 91日韩一区二区三区| 26uuu国产在线精品一区二区| 亚洲国产日韩精品| 波多野结衣精品在线| 欧美大片国产精品| 午夜成人免费电影| 色综合天天视频在线观看| 久久久久久久久久久久电影 | 日韩高清不卡一区二区三区| 波多野结衣亚洲一区| 久久综合五月天婷婷伊人| 日韩高清不卡在线| 欧美日韩国产精品自在自线| 综合av第一页| 波多野结衣的一区二区三区| 久久精品视频一区| 欧美日韩精品一区二区三区| 亚洲精选一二三| 91玉足脚交白嫩脚丫在线播放| 国产欧美一区二区三区网站| 久久成人18免费观看| 7777女厕盗摄久久久| 亚洲网友自拍偷拍| 欧美三级韩国三级日本一级| 亚洲美女精品一区| 一本到三区不卡视频| 亚洲欧美综合色| 99视频在线观看一区三区| 亚洲国产精品av| 不卡免费追剧大全电视剧网站| 国产欧美一区二区精品性色| 国产999精品久久| 国产精品久久久久桃色tv| 国产精品一区二区在线观看网站| 精品国产伦一区二区三区免费 | 欧美军同video69gay| 亚洲国产精品视频| 欧美在线三级电影| 三级影片在线观看欧美日韩一区二区| 欧美三级电影在线看| 色av成人天堂桃色av| 亚洲另类中文字| 欧美日韩一级片在线观看| 日日夜夜免费精品| 日韩欧美综合在线| 国产福利不卡视频| 亚洲女人****多毛耸耸8| 欧日韩精品视频| 免费精品视频在线| 国产亚洲福利社区一区| 99久久精品国产麻豆演员表| 亚洲人精品一区| 欧美久久免费观看| 国产精品一区二区三区四区| 国产精品你懂的在线| 欧美亚洲免费在线一区| 日韩av电影免费观看高清完整版在线观看 | 91国偷自产一区二区开放时间 | 国产日韩欧美综合一区| 99久久精品国产一区| 亚洲电影一区二区三区| 日韩欧美高清一区| 成人久久18免费网站麻豆 | 久久精品国产亚洲a| 国产亚洲欧美日韩在线一区| 99re这里只有精品6| 亚洲超碰精品一区二区| 精品国产91乱码一区二区三区| 国产真实乱偷精品视频免| 中文子幕无线码一区tr| 欧美日韩亚洲综合在线| 国产精品资源在线| 国产欧美精品一区二区三区四区| 欧美丝袜自拍制服另类| 日韩精品一区二区三区蜜臀| 国产精品一区在线观看乱码| 一区二区久久久| 亚洲18色成人| 亚洲成人7777| 成人av在线网站| 日韩欧美成人午夜| 亚洲欧美综合色| 黄色小说综合网站| 欧美日韩精品一区二区三区蜜桃| 国产亚洲婷婷免费| 亚洲va在线va天堂| 成人高清视频在线观看| 欧美丰满美乳xxx高潮www| 国产午夜精品理论片a级大结局| 国产精品电影院| 国产最新精品精品你懂的| 精品视频999| 国产精品剧情在线亚洲| 日本vs亚洲vs韩国一区三区二区 | 蜜桃av一区二区| 日本丶国产丶欧美色综合| 欧美极品aⅴ影院| 男人操女人的视频在线观看欧美| 色婷婷综合五月| 国产精品丝袜在线| 国产精品主播直播| 日韩欧美国产三级电影视频| 五月综合激情网| 在线视频国内一区二区| 亚洲欧美日韩中文字幕一区二区三区 | 在线免费精品视频| 亚洲欧美日韩电影| av亚洲精华国产精华| 国产拍欧美日韩视频二区| 久久er精品视频| 日韩一级高清毛片| 另类人妖一区二区av| 777午夜精品免费视频| 婷婷综合五月天| 91精品中文字幕一区二区三区| 亚洲妇女屁股眼交7| 欧美性生活一区| 亚洲电影在线免费观看| 9191国产精品| 日韩国产精品久久久| 欧美一区二区三区婷婷月色| 视频一区欧美精品| 欧美男人的天堂一二区| 午夜国产精品影院在线观看| 91麻豆精品国产91久久久使用方法 | 午夜亚洲国产au精品一区二区| 欧美视频一区二区在线观看| 亚洲高清在线视频| 日韩一区二区免费高清| 久久精品国产网站| 国产精品三级视频| 色婷婷激情综合| 视频一区二区三区入口| 26uuu色噜噜精品一区| 国产成人小视频| 亚洲色欲色欲www在线观看| 欧美图区在线视频| 毛片av中文字幕一区二区| 国产亚洲一区二区三区四区 | 秋霞av亚洲一区二区三| 久久久天堂av| 一本色道久久综合亚洲91| 天天综合色天天综合色h| 精品人伦一区二区色婷婷| 国产成人精品午夜视频免费| 亚洲欧美日韩国产综合在线| 日韩一区和二区| 成人97人人超碰人人99| 亚洲福利视频一区| 久久久美女毛片| 欧美亚洲国产一区二区三区va| 日韩福利视频导航| 国产欧美精品一区aⅴ影院| 欧美做爰猛烈大尺度电影无法无天| 日韩制服丝袜av| 日韩一区中文字幕| 日韩一区二区三区高清免费看看| 丁香桃色午夜亚洲一区二区三区| 一区二区三区四区在线免费观看| 日韩欧美一二三| 97久久精品人人澡人人爽| 日韩**一区毛片| 日韩久久一区二区| 国产亚洲制服色| 日韩亚洲欧美高清| 欧美性极品少妇| 97se亚洲国产综合自在线 | 欧美国产日韩精品免费观看| 欧美美女一区二区三区| 不卡av电影在线播放| 久久精品国产**网站演员| 亚洲综合一区二区三区| 欧美激情一区二区三区不卡 | 亚洲人成网站影音先锋播放| 久久精品欧美日韩| 欧美xxxxxxxx| 欧美日韩免费不卡视频一区二区三区| 国产黄色成人av| 国内精品国产三级国产a久久| 亚洲在线视频免费观看| ●精品国产综合乱码久久久久| 久久久久久久久久看片| 日韩欧美www| 欧美一区二区久久久| 欧美日韩视频不卡| 在线免费观看日本欧美| 一本色道久久综合亚洲精品按摩 | 亚洲特级片在线| 中文字幕在线不卡一区| 国产亚洲欧美在线| 久久久久久久久久久久久夜| 精品福利av导航| 精品国产乱码久久久久久夜甘婷婷|