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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ready_prompt.shtml

?? mfc資源大全包含MFC編程各個方面的源碼
?? SHTML
字號:
<HTML>
<HEAD>
   <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
   <META NAME="Author" CONTENT="Zafir Anjum">
   <TITLE>Statusbar - "Ready" prompt replacement</TITLE>
</HEAD>
<body background="../fancyhome/back.gif" bgcolor="#FFFFFF" link="#B50029" vlink="#8E2323" alink="#FF0000" bgproperties="fixed">
<table WIDTH="100%">
<tr WIDTH="100%">
<td align=center><!--#exec cgi="/cgi/ads.cgi"--><td>
</tr>
</table>


<CENTER>
<H3>
<FONT COLOR="#AOAO99">"Ready" prompt replacement</FONT></H3></CENTER>
<HR>

This sample was contributed by <A HREF="mailto:mfindlay@seanet.com">Mark Findlay</A>.

<H4>Replacing the "Ready" message at run time with custom text.</H4>

<P>The following will allow you to specify a replacement string to appear
in the status bar any time the customary "Ready" string would normally
appear.

<P>The difference between this and simply using the AFX_IDS_IDLEMESSAGE 
is that this technique allows you to set the text to appear in place 
of the "Ready" prompt AT RUN TIME.

<P>With this, you could for example, read a database, then display the 
number of records read of a total record count, or display the time
it took to read the table, or the table name, etc.

<P>With this technique you can change the text as much as you like, 
any time you like during the course of program execution.

<P>Thanks to Steve McAdams for his help in pointing me to the right
place to get things working.

<P>The function that handles this is copied almost verbatim from
the WINFRM.CPP CFrameWnd::OnSetMessageString. The only change
is to display our own message string.


<P>Our changes will take place in the CMainFrame class.


<H4>Step1:</H4>
Create a CString variable that will contain the text to display
<PRE><TT><FONT COLOR="#990000">
	CString m_sStatusBarString;
</FONT></TT></PRE>

<H4>Step2:</H4>
Add the prototype in the CMainFrame.h file for the OnSetMessageString() 
function
<PRE><TT><FONT COLOR="#990000">
	//{{AFX_MSG(CMainFrame)
	afx_msg LRESULT OnSetMessageString(WPARAM wParam, LPARAM lParam);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
</FONT></TT></PRE>

<H4>Step3:</H4>
Add the OnSetMessageString() handler to the CMainFrame.cpp file
<PRE><TT><FONT COLOR="#990000">
	BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
		//{{AFX_MSG_MAP(CMainFrame)
		ON_MESSAGE(WM_SETMESSAGESTRING, OnSetMessageString)
		//}}AFX_MSG_MAP
	END_MESSAGE_MAP()
</FONT></TT></PRE>

<H4>Step4:</H4>
Create the OnSetMessageString() function:

<PRE><TT><FONT COLOR="#990000">
//***************************************************************
LRESULT CMainFrame::OnSetMessageString(WPARAM wParam, LPARAM lParam)
{
	UINT nIDLast = m_nIDLastMessage;
	m_nFlags &= ~WF_NOPOPMSG;

	CWnd* pMessageBar = GetMessageBar();
	if (pMessageBar != NULL)
	{
		LPCTSTR lpsz = NULL;
		CString strMessage;

		// set the message bar text
		if (lParam != 0)
		{
			ASSERT(wParam == 0);    
            m_sStatusBarString = (LPCTSTR)lParam;   // Here is our string
            lpsz = m_sStatusBarString;
		}
		else if (wParam != 0)
		{
			// map SC_CLOSE to PREVIEW_CLOSE when in print preview mode
			if (wParam == AFX_IDS_SCCLOSE && m_lpfnCloseProc != NULL)
				wParam = AFX_IDS_PREVIEW_CLOSE;

			// If the "Ready" string is attempted to be read, 
            // use our string instead
            if (wParam == AFX_IDS_IDLEMESSAGE)
                lpsz = m_sStatusBarString;
            else
            {   // default for menu items etc.
			    GetMessageString(wParam, strMessage);   
			    lpsz = strMessage;
            }
		}

        // Set text of status bar
		pMessageBar->SetWindowText(lpsz);

		// update owner of the bar in terms of last message selected
		CFrameWnd* pFrameWnd = pMessageBar->GetParentFrame();
		if (pFrameWnd != NULL)
		{
			m_nIDLastMessage = (UINT)wParam;
			m_nIDTracking = (UINT)wParam;
		}
	}

	m_nIDLastMessage = (UINT)wParam;    // new ID (or 0)
	m_nIDTracking = (UINT)wParam;       // so F1 on toolbar buttons work
	return nIDLast;
}
</FONT></TT></PRE>


<H4>Step5:</H4>
WM_SETMESSAGESTRING is defined in afxpriv.h. Because we want to be able to use this 
message in any file, add the include to the Stdafx.h file
<PRE><TT><FONT COLOR="#990000">
#include &lt;afxpriv.h&gt; // defines WM_SETMESSAGESTRING
</FONT></TT></PRE>


<P>That's all there is to it. To set the status bar text use the following
to invoke the OnSetMessageString() function:
<PRE><TT><FONT COLOR="#990000">
CString sReplacementText = "This text will always appear in place of Ready";

    ((CMainFrame*)AfxGetMainWnd())->SendMessage(WM_SETMESSAGESTRING, 
        (WPARAM)0, (LPARAM)sReplacementText.GetBuffer(0)); 

</FONT></TT></PRE>


<!-- Remember to update this -->
<p>Last updated: 17 May 1998

<P><HR>

<!-- Codeguru contact details -->
<TABLE BORDER=0 WIDTH="100%" >
<TR>
<TD WIDTH="33%"><FONT SIZE=-1><A HREF="http://www.codeguru.com">Goto HomePage</A></FONT></TD>

<TD WIDTH="33%">
<CENTER><FONT SIZE=-2>&copy; 1998 Zafir Anjum</FONT>&nbsp;</CENTER>
</TD>

<TD WIDTH="34%">
<DIV ALIGN=right><FONT SIZE=-1>Contact me: <A HREF="mailto:zafir@home.com">zafir@home.com</A>&nbsp;</FONT></DIV>
</TD>
</TR>
</TABLE>
</BODY>
</HTML>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
污片在线观看一区二区| 国产精品全国免费观看高清| 欧美电影精品一区二区| 久久久影视传媒| 日韩久久一区二区| 久久99国内精品| 色婷婷综合久久久久中文| 欧美电视剧免费全集观看| 亚洲欧洲精品一区二区三区不卡| 亚洲午夜久久久久久久久久久| 国产专区欧美精品| 欧美另类videos死尸| 亚洲日本乱码在线观看| 国产一区二区三区在线观看免费 | 偷窥国产亚洲免费视频| 欧美一级一区二区| 国产精品精品国产色婷婷| 美女视频黄a大片欧美| 波多野洁衣一区| 精品久久人人做人人爰| 三级成人在线视频| 欧美一级日韩免费不卡| 4hu四虎永久在线影院成人| 中文字幕一区二区三区不卡在线| 久久电影国产免费久久电影| 欧美日韩日本视频| 一区二区三区精品| 91在线播放网址| 欧美极品aⅴ影院| 国产精品一区二区三区四区| 日韩精品中文字幕一区| 日本少妇一区二区| 717成人午夜免费福利电影| 亚洲欧美另类综合偷拍| 成人动漫在线一区| 国产人成亚洲第一网站在线播放| 国产成人av电影在线| 成人18视频日本| 国产精品系列在线| 成人综合婷婷国产精品久久免费| 精品久久久久av影院| 国产自产视频一区二区三区| 首页欧美精品中文字幕| 蜜臀久久久99精品久久久久久| 成人精品国产免费网站| 国产精品久久毛片a| www.欧美日韩| 亚洲一区二区综合| 欧美日韩一区在线| 蜜桃一区二区三区在线| 日韩免费观看高清完整版 | 欧美高清视频一二三区 | 国产欧美在线观看一区| 国产麻豆精品在线观看| 国产精品久久久久久户外露出| aaa欧美大片| 一区二区国产盗摄色噜噜| 欧美日韩久久久一区| 午夜婷婷国产麻豆精品| 久久综合九色综合欧美亚洲| 国产精品一区二区在线观看网站| 国产精品萝li| 欧美午夜宅男影院| 日本va欧美va精品| 久久久久久黄色| 色先锋资源久久综合| 无吗不卡中文字幕| 久久久国产午夜精品| 97精品超碰一区二区三区| 亚洲一区二区高清| 欧美不卡视频一区| 99国产精品国产精品久久| 亚洲愉拍自拍另类高清精品| 欧美成人a在线| 99re这里都是精品| 裸体歌舞表演一区二区| 中日韩免费视频中文字幕| 欧美电影在线免费观看| 国产成人av电影在线观看| 亚洲女人小视频在线观看| 日韩精品在线看片z| 国产亚洲欧洲997久久综合| 综合亚洲深深色噜噜狠狠网站| 日本伊人精品一区二区三区观看方式| 国产精品亚洲一区二区三区妖精| 在线综合+亚洲+欧美中文字幕| 日本一区二区三区电影| 欧美中文字幕一二三区视频| 欧美在线观看视频一区二区三区 | 91小视频在线观看| 一本色道久久综合精品竹菊| 一个色综合av| 色香蕉久久蜜桃| 亚洲国产乱码最新视频| 欧美在线你懂的| 亚洲国产wwwccc36天堂| 欧美va日韩va| 蜜臀av性久久久久蜜臀av麻豆| 色悠悠亚洲一区二区| 中文文精品字幕一区二区| 亚洲另类春色校园小说| 菠萝蜜视频在线观看一区| 中文字幕免费一区| 精品国产麻豆免费人成网站| 久久精品视频一区二区| 国内精品免费在线观看| 久久嫩草精品久久久精品| 欧美区在线观看| 一本色道久久综合亚洲精品按摩| 成人动漫一区二区| 国产成人免费在线视频| 国产精品一区二区无线| 国产一区二区三区不卡在线观看 | 欧美午夜精品久久久| 粉嫩绯色av一区二区在线观看 | 一区二区三区在线视频免费| 成人黄色小视频| 色偷偷88欧美精品久久久| 国产乱理伦片在线观看夜一区| 久久国产精品区| 中文字幕欧美国产| 91老师国产黑色丝袜在线| 蜜桃视频一区二区| 亚洲摸摸操操av| 韩国v欧美v亚洲v日本v| 国产精品99久久久久久久女警| 最好看的中文字幕久久| 欧美男男青年gay1069videost| 日本少妇一区二区| 日韩国产在线一| 亚洲黄色av一区| 美女视频黄频大全不卡视频在线播放| 天堂一区二区在线| 国产亚洲婷婷免费| 精品视频免费看| 国产欧美日韩在线| 日韩欧美一区在线观看| 国产麻豆精品在线观看| 日本欧美一区二区在线观看| 精品国产亚洲一区二区三区在线观看| 欧美成人猛片aaaaaaa| 日韩欧美国产高清| 欧美aaaaaa午夜精品| 伦理电影国产精品| 97久久超碰国产精品| 91老师片黄在线观看| 精品国产欧美一区二区| 一区在线播放视频| 国产成人三级在线观看| www.欧美.com| 日韩精品一区二区三区在线 | 中文字幕亚洲不卡| 国产原创一区二区| 精品国产乱码久久久久久影片| 日本成人中文字幕| 日韩欧美在线一区二区三区| 午夜精品国产更新| 日韩欧美一区二区在线视频| 亚洲国产精华液网站w| 欧美性受极品xxxx喷水| 欧美浪妇xxxx高跟鞋交| 日韩中文字幕区一区有砖一区| av亚洲精华国产精华精| 中文字幕一区二| 欧美日韩国产综合草草| 一区二区三区欧美久久| 欧美日韩三级一区| 日本中文在线一区| 久久久不卡网国产精品二区| 丰满白嫩尤物一区二区| 一区二区三区在线不卡| 欧美精品18+| 久久www免费人成看片高清| 国产欧美综合在线观看第十页| 91国产福利在线| 国产精品成人免费在线| 欧美精品亚洲一区二区在线播放| 国产v日产∨综合v精品视频| 五月综合激情婷婷六月色窝| 久久精品亚洲国产奇米99| aaa国产一区| 精品一区二区三区蜜桃| 国产精品久久久久婷婷二区次| 欧美无乱码久久久免费午夜一区| 免费精品99久久国产综合精品| 国产精品欧美一区二区三区| 丁香激情综合五月| 亚洲黄色在线视频| 一区二区三区四区亚洲| 中文字幕av不卡| 中文字幕不卡在线观看| 欧美电影免费观看高清完整版在| 91精品办公室少妇高潮对白| 不卡一区二区在线| 成熟亚洲日本毛茸茸凸凹| 久久99精品国产.久久久久 | 久久综合资源网| 欧美日韩高清一区二区三区| 亚洲一区视频在线| 欧美日韩一区二区三区在线|