📄 notepaddlg.cpp.htm
字号:
<font color=gray>001</font> <font color=green>/**************************************************<br><font color=gray>002</font> 以下代码由“老罗代码着色器”0.1版进行着色<br><font color=gray>003</font> 测试文件名:NotePadDlg.cpp<br><font color=gray>004</font> 测试日期: 2002-12-24<br><font color=gray>005</font> **************************************************/</font><br><font color=gray>006</font> <br><font color=gray>007</font> <br><font color=gray>008</font> <font color=green>// NotePadDlg.cpp : implementation file</font><br><font color=gray>009</font> <font color=green>//</font><br><font color=gray>010</font> <br><font color=gray>011</font> <font color=red>#include</font> <font color=orange>"stdafx.h"</font><br><font color=gray>012</font> <font color=red>#include</font> <font color=orange>"NotePad.h"</font><br><font color=gray>013</font> <font color=red>#include</font> <font color=orange>"NotePadDlg.h"</font><br><font color=gray>014</font> <br><font color=gray>015</font> <font color=red>#ifdef</font> _DEBUG<br><font color=gray>016</font> <font color=red>#define</font> <font color=blue>new</font> DEBUG_NEW<br><font color=gray>017</font> <font color=red>#undef</font> THIS_FILE<br><font color=gray>018</font> <font color=blue>static</font> <font color=blue>char</font> THIS_FILE[] = __FILE__;<br><font color=gray>019</font> <font color=red>#endif</font><br><font color=gray>020</font> <br><font color=gray>021</font> <font color=green>/////////////////////////////////////////////////////////////////////////////</font><br><font color=gray>022</font> <font color=green>// CAboutDlg dialog used for App About</font><br><font color=gray>023</font> <br><font color=gray>024</font> <font color=blue>class</font> CAboutDlg : <font color=blue>public</font> CDialog<br><font color=gray>025</font> {<br><font color=gray>026</font> <font color=blue>public</font>:<br><font color=gray>027</font> CAboutDlg();<br><font color=gray>028</font> <br><font color=gray>029</font> <font color=green>// Dialog Data</font><br><font color=gray>030</font> <font color=green>//{{AFX_DATA(CAboutDlg)</font><br><font color=gray>031</font> enum { IDD = IDD_ABOUTBOX };<br><font color=gray>032</font> <font color=green>//}}AFX_DATA</font><br><font color=gray>033</font> <br><font color=gray>034</font> <font color=green>// ClassWizard generated virtual function overrides</font><br><font color=gray>035</font> <font color=green>//{{AFX_VIRTUAL(CAboutDlg)</font><br><font color=gray>036</font> <font color=blue>protected</font>:<br><font color=gray>037</font> <font color=blue>virtual</font> <font color=blue>void</font> DoDataExchange(CDataExchange* pDX); <font color=green>// DDX/DDV support</font><br><font color=gray>038</font> <font color=green>//}}AFX_VIRTUAL</font><br><font color=gray>039</font> <br><font color=gray>040</font> <font color=green>// Implementation</font><br><font color=gray>041</font> <font color=blue>protected</font>:<br><font color=gray>042</font> <font color=green>//{{AFX_MSG(CAboutDlg)</font><br><font color=gray>043</font> <font color=green>//}}AFX_MSG</font><br><font color=gray>044</font> DECLARE_MESSAGE_MAP()<br><font color=gray>045</font> };<br><font color=gray>046</font> <br><font color=gray>047</font> CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)<br><font color=gray>048</font> {<br><font color=gray>049</font> <font color=green>//{{AFX_DATA_INIT(CAboutDlg)</font><br><font color=gray>050</font> <font color=green>//}}AFX_DATA_INIT</font><br><font color=gray>051</font> }<br><font color=gray>052</font> <br><font color=gray>053</font> <font color=blue>void</font> CAboutDlg::DoDataExchange(CDataExchange* pDX)<br><font color=gray>054</font> {<br><font color=gray>055</font> CDialog::DoDataExchange(pDX);<br><font color=gray>056</font> <font color=green>//{{AFX_DATA_MAP(CAboutDlg)</font><br><font color=gray>057</font> <font color=green>//}}AFX_DATA_MAP</font><br><font color=gray>058</font> }<br><font color=gray>059</font> <br><font color=gray>060</font> BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)<br><font color=gray>061</font> <font color=green>//{{AFX_MSG_MAP(CAboutDlg)</font><br><font color=gray>062</font> <font color=green>// No message handlers</font><br><font color=gray>063</font> <font color=green>//}}AFX_MSG_MAP</font><br><font color=gray>064</font> END_MESSAGE_MAP()<br><font color=gray>065</font> <br><font color=gray>066</font> <font color=green>/////////////////////////////////////////////////////////////////////////////</font><br><font color=gray>067</font> <font color=green>// CNotePadDlg dialog</font><br><font color=gray>068</font> <br><font color=gray>069</font> CNotePadDlg::CNotePadDlg(CWnd* pParent <font color=green>/*=NULL*/</font>)<br><font color=gray>070</font> : CDialog(CNotePadDlg::IDD, pParent)<br><font color=gray>071</font> {<br><font color=gray>072</font> <font color=green>//{{AFX_DATA_INIT(CNotePadDlg)</font><br><font color=gray>073</font> <font color=green>// NOTE: the ClassWizard will add member initialization here</font><br><font color=gray>074</font> <font color=green>//}}AFX_DATA_INIT</font><br><font color=gray>075</font> <font color=green>// Note that LoadIcon does not require a subsequent DestroyIcon in Win32</font><br><font color=gray>076</font> m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);<br><font color=gray>077</font> }<br><font color=gray>078</font> <br><font color=gray>079</font> <font color=blue>void</font> CNotePadDlg::DoDataExchange(CDataExchange* pDX)<br><font color=gray>080</font> {<br><font color=gray>081</font> CDialog::DoDataExchange(pDX);<br><font color=gray>082</font> <font color=green>//{{AFX_DATA_MAP(CNotePadDlg)</font><br><font color=gray>083</font> <font color=green>// NOTE: the ClassWizard will add DDX and DDV calls here</font><br><font color=gray>084</font> <font color=green>//}}AFX_DATA_MAP</font><br><font color=gray>085</font> }<br><font color=gray>086</font> <br><font color=gray>087</font> BEGIN_MESSAGE_MAP(CNotePadDlg, CDialog)<br><font color=gray>088</font> <font color=green>//{{AFX_MSG_MAP(CNotePadDlg)</font><br><font color=gray>089</font> ON_WM_SYSCOMMAND()<br><font color=gray>090</font> ON_WM_PAINT()<br><font color=gray>091</font> ON_WM_QUERYDRAGICON()<br><font color=gray>092</font> <font color=green>//}}AFX_MSG_MAP</font><br><font color=gray>093</font> END_MESSAGE_MAP()<br><font color=gray>094</font> <br><font color=gray>095</font> <font color=green>/////////////////////////////////////////////////////////////////////////////</font><br><font color=gray>096</font> <font color=green>// CNotePadDlg message handlers</font><br><font color=gray>097</font> <br><font color=gray>098</font> <font color=blue>BOOL</font> CNotePadDlg::OnInitDialog()<br><font color=gray>099</font> {<br><font color=gray>100</font> CDialog::OnInitDialog();<br><font color=gray>101</font> <br><font color=gray>102</font> <font color=green>// Add "About..." menu item to system menu.</font><br><font color=gray>103</font> <br><font color=gray>104</font> <font color=green>// IDM_ABOUTBOX must be in the system command range.</font><br><font color=gray>105</font> ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);<br><font color=gray>106</font> ASSERT(IDM_ABOUTBOX < 0xF000);<br><font color=gray>107</font> <br><font color=gray>108</font> CMenu* pSysMenu = GetSystemMenu(<font color=blue>FALSE</font>);<br><font color=gray>109</font> <font color=blue>if</font> (pSysMenu != NULL)<br><font color=gray>110</font> {<br><font color=gray>111</font> CString strAboutMenu;<br><font color=gray>112</font> strAboutMenu.LoadString(IDS_ABOUTBOX);<br><font color=gray>113</font> <font color=blue>if</font> (!strAboutMenu.IsEmpty())<br><font color=gray>114</font> {<br><font color=gray>115</font> pSysMenu->AppendMenu(MF_SEPARATOR);<br><font color=gray>116</font> pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);<br><font color=gray>117</font> }<br><font color=gray>118</font> }<br><font color=gray>119</font> <br><font color=gray>120</font> <font color=green>// Set the icon for this dialog. The framework does this automatically</font><br><font color=gray>121</font> <font color=green>// when the application's main window is not a dialog</font><br><font color=gray>122</font> SetIcon(m_hIcon, <font color=blue>TRUE</font>); <font color=green>// Set big icon</font><br><font color=gray>123</font> SetIcon(m_hIcon, <font color=blue>FALSE</font>); <font color=green>// Set small icon</font><br><font color=gray>124</font> <br><font color=gray>125</font> <font color=green>// TODO: Add extra initialization here</font><br><font color=gray>126</font> <br><font color=gray>127</font> <font color=blue>return</font> <font color=blue>TRUE</font>; <font color=green>// return TRUE unless you set the focus to a control</font><br><font color=gray>128</font> }<br><font color=gray>129</font> <br><font color=gray>130</font> <font color=blue>void</font> CNotePadDlg::OnSysCommand(UINT nID, LPARAM lParam)<br><font color=gray>131</font> {<br><font color=gray>132</font> <font color=blue>if</font> ((nID & 0xFFF0) == IDM_ABOUTBOX)<br><font color=gray>133</font> {<br><font color=gray>134</font> CAboutDlg dlgAbout;<br><font color=gray>135</font> dlgAbout.DoModal();<br><font color=gray>136</font> }<br><font color=gray>137</font> <font color=blue>else</font><br><font color=gray>138</font> {<br><font color=gray>139</font> CDialog::OnSysCommand(nID, lParam);<br><font color=gray>140</font> }<br><font color=gray>141</font> }<br><font color=gray>142</font> <br><font color=gray>143</font> <font color=green>// If you add a minimize button to your dialog, you will need the code below</font><br><font color=gray>144</font> <font color=green>// to draw the icon. For MFC applications using the document/view model,</font><br><font color=gray>145</font> <font color=green>// this is automatically done for you by the framework.</font><br><font color=gray>146</font> <br><font color=gray>147</font> <font color=blue>void</font> CNotePadDlg::OnPaint() <br><font color=gray>148</font> {<br><font color=gray>149</font> <font color=blue>if</font> (IsIconic())<br><font color=gray>150</font> {<br><font color=gray>151</font> CPaintDC dc(<font color=blue>this</font>); <font color=green>// device context for painting</font><br><font color=gray>152</font> <br><font color=gray>153</font> SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);<br><font color=gray>154</font> <br><font color=gray>155</font> <font color=green>// Center icon in client rectangle</font><br><font color=gray>156</font> <font color=blue>int</font> cxIcon = GetSystemMetrics(SM_CXICON);<br><font color=gray>157</font> <font color=blue>int</font> cyIcon = GetSystemMetrics(SM_CYICON);<br><font color=gray>158</font> CRect rect;<br><font color=gray>159</font> GetClientRect(&rect);<br><font color=gray>160</font> <font color=blue>int</font> x = (rect.Width() - cxIcon + 1) / 2;<br><font color=gray>161</font> <font color=blue>int</font> y = (rect.Height() - cyIcon + 1) / 2;<br><font color=gray>162</font> <br><font color=gray>163</font> <font color=green>// Draw the icon</font><br><font color=gray>164</font> dc.DrawIcon(x, y, m_hIcon);<br><font color=gray>165</font> }<br><font color=gray>166</font> <font color=blue>else</font><br><font color=gray>167</font> {<br><font color=gray>168</font> CDialog::OnPaint();<br><font color=gray>169</font> }<br><font color=gray>170</font> }<br><font color=gray>171</font> <br><font color=gray>172</font> <font color=green>// The system calls this to obtain the cursor to display while the user drags</font><br><font color=gray>173</font> <font color=green>// the minimized window.</font><br><font color=gray>174</font> HCURSOR CNotePadDlg::OnQueryDragIcon()<br><font color=gray>175</font> {<br><font color=gray>176</font> <font color=blue>return</font> (HCURSOR) m_hIcon;<br><font color=gray>177</font> }<br><font color=gray>178</font>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -