文件地址:d:\notes\bookmark.html
打開vc++→文件→新建→工程→MFC AppWizard[exe]→工程名稱:records;
如上圖所示,確定→勾選“基本對話框”→下一步→下一步→確定;
控件右擊→class wizard→Member variables→選中控件ID→add variable→變量名、類別;
命令控件雙擊→OK→添加函數代碼
void CRecordsDlg::OnButton1()
{
CString m_link;
UpdateData(1);
CEdit *edit3=(CEdit*)GetDlgItem(IDC_RICHEDIT3);
edit3->GetWindowText(m_link);
m_link.TrimLeft();
m_link.TrimRight();
CString m_title;
UpdateData(1);
CEdit *edit2=(CEdit*)GetDlgItem(IDC_RICHEDIT2);
edit2->GetWindowText(m_title);
m_title.TrimLeft();
m_title.TrimRight();
m_address.TrimLeft();
m_address.TrimRight();
CString http="http:" ;
CString https="https:" ;
int indexn=m_address.Find(http);
int indexn2=m_address.Find(https);
bool flagb=FALSE;
if((indexn >=0)||(indexn2 >=0))
{
flagb=TRUE;
}
FILE *fp;
if((fp=fopen(m_fname,"a+"))==NULL)
{
printf("\n 文件notes.html不能打開!\n");
exit(0);
}
if(m_address=="" && m_link=="")
{
m_status="鏈接href(如http://www.baidu.com)、鏈接文本linkedText不能為空!";
m_address=="" ;
edit3->SetWindowText("");
GetDlgItem(IDC_RICHEDIT1)->SetFocus();
}
else
{
if (m_address !="")
{
if (m_link !="")
{
if(flagb)
{
fputs("<li><a href=\"",fp);
fputs(m_address,fp);
fputs("\"",fp);
fputs("title=\"",fp);
fputs(m_title,fp);
fputs("\">",fp);
fputs(m_link,fp);
fputs("</a></li>",fp);
fputs("\n\r",fp);
m_address="" ;
edit3->SetWindowText("");
edit2->SetWindowText("");
m_status="鏈接已插入" + m_fname ;
GetDlgItem(IDC_RICHEDIT1)->SetFocus();
}
else
{
m_status="href請以http://或https://開頭!" ;
m_address="" ;
}
}
else
{
m_status="鏈接文本linkedText不能為空!";
GetDlgItem(IDC_RICHEDIT3)->SetFocus();
}
}
else
{
m_status="鏈接address不能不空!";
GetDlgItem(IDC_RICHEDIT1)->SetFocus();
}
}
UpdateData(0);
fclose(fp);
}
組建→執行,即可得到Records.exe文件;
將網頁地址、提示文本、鏈接文本復制到上述文本框內,點擊插入鏈接按鈕即可在d:\notes\bookmark.html內自動添加鏈接;
7.1 VC++6界面簡單說明
工作區切換class、Resource、File三個選項卡,點擊相應的文件,文檔區顯示相應文件的內容;
類class;
資源Resorce:主要是圖形界面文件,如菜單、工具欄圖標、控件等;
文件File:主要是頭文件和CPP文件。控件對應數據和方法,類實例化的對象及其所對應的數據和方法;
7.2 編輯框和富文本編輯框rich edit
edit type | category | variable type | remark |
編輯框 | value | CString\int | 定義的控件變量可以直接賦值; |
編輯框 | control | Cedit | 可以調用CEdit類中的一些函數;定義的變量不能直接賦值; |
rich edit | value | CString\int | 定義的控件變量可以直接賦值; |
rich edit | Control | CRichEidtCtrl | 可以調用CEdit類中的一些函數;定義的變量不能直接賦值; |
7.3 富文本編輯框
在mfc中使用工具欄里的RichEdit 控件時,應該在程序初始化時加入AfxInitRichEdit(),或者AfxInitRichEdit2(),否則的話程序會起不來.也沒有任何錯誤信息。這倆函數是加載 Riched20.dll(Riched32.dll)的.
富編輯框ID:IDC_EDIT2
富編輯框變量類型:CRichEditCtrl,名稱:m_link
//必須是CRichEditCtrl數據類型,如果是CString類型,不能用下面的方面清空和獲取文本;
CEdit *edit1=(CEdit*)GetDlgItem(IDC_EDIT2);edit1->GetWindowText(m_text);
edit1->SetWindowText("");
7.4 控件內容與控件變量的數據交換
UpdateData(1):將控件上的數據讀取到變量中;
UpdateData(0):將變量中的數據寫到控件中;
-End-
超鏈接就是你在網頁上點一個按鈕,它會自動跳轉到其他頁面或自動進行下載。
超鏈接的標簽是 a 標簽 ,一般的超鏈接語法是這樣的:<a href屬性=“鏈接”>按鈕名稱,例如:
注意事項:添加超鏈接時,被鏈接的文件類型如果可以被瀏覽器識別則自動打開,如果不能被識別,會直接下載。
1、外部跳轉:外部跳轉就是類似上面那個,點擊后跳轉到其他頁面。
<body>
<!--超鏈接標簽-->
<a href="https://www.baidu.com">點擊跳轉到百度</a>
</body>
2、內部跳轉:內部跳轉的意思就是,點擊完后跳轉到這個網頁目錄下的某個文件,用法如下:
<body>
<!--內部跳轉:假設要跳轉到當前路徑下的 test.html 文件,可以這樣寫-->
<a href="test.html">內部html文件</a>
<!--或者這樣寫-->
<a href="d:/html/test.html">內部html文件</a>
</body>
3、下載超鏈接:這個意思就是點擊按鈕后開始下載,下載就是跳轉到某個文件上,例如:
篇介紹了html 中文本格式及段落等標簽,今天說下列表,什么是列表?它就是一種數據排列方式,以條列式的方式顯示文本,使讀者一目了然。列表主要有以下三種:
無序列表在每行開始位置顯示一個符號,語法如下:
<html>
<body>
<h4>一個無序列表:</h4>
<ul>
<li>咖啡</li>
<li>茶</li>
<li>牛奶</li>
</ul>
</body>
</html>
顯示效果:
無序列表的符號可以通過在ul 標簽上設置 type 屬性顯示不同的符號,比如:
1、disc —— 實心圓點 (默認類型)
2、circle —— 空心圓圈
3、square —— 實心方塊
實例代碼:
<html>
<body>
<h4>一個無序列表:</h4>
<ul type="disc">
<li>咖啡</li>
<li>茶</li>
<li>牛奶</li>
</ul>
<h4>一個無序列表:</h4>
<ul type="circle">
<li>咖啡</li>
<li>茶</li>
<li>牛奶</li>
</ul>
<h4>一個無序列表:</h4>
<ul type="square">
<li>咖啡</li>
<li>茶</li>
<li>牛奶</li>
</ul>
</body>
顯示效果:
有序列表使用數字或字母符號排列,表示文本按一定順序顯示,語法如下:
<!DOCTYPE html>
<html>
<body>
<ol>
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
</body>
</html>
效果如下:
同無序列表一樣,在ol上通過type 屬性設置使用那種符號表示順序,有以下幾種:
1、1,表示數字 1、2、3..... (默認數字)
2、a,表示小寫字母 a、b、c....
3、A,表示大寫字母 A、B、C ....
4、i,表示小寫羅馬字母 i、ii、iii、iv....
5、I,表示大寫羅馬字母 I、II、III、IV....
顯示效果如下:
html代碼:
<!DOCTYPE html>
<html>
<body>
數字
<ol type="1">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
小寫字母
<ol type="a">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
大寫字母
<ol type="A">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
小寫羅馬字母
<ol type="i">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
大寫羅馬字母
<ol type="I">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
</body>
</html>
有序列表還可以通過start 屬性設置起始數組,如下:
<ol start="3">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
顯示效果:
不同以上2種列表,定義列表主要用來解釋名詞,由2種層次列表顯示,第一層是被解釋的名詞,第二層是詳細地解釋文字,語法如下:
<html>
<body>
<h2>一個定義列表:</h2>
<dl>
<dt>計算機</dt>
<dd>用來計算的儀器 ... ...</dd>
<dt>顯示器</dt>
<dd>以視覺方式顯示信息的裝置 ... ...</dd>
</dl>
</body>
</html>
顯示效果:
第一行<dt>是要解釋的名詞,第二行標簽<dd>是解釋文本,會自動縮進。
以上三種列表是可以嵌套使用的,看如下示例:
<html>
<body>
<h4>一個嵌套列表:</h4>
<ul>
<li>咖啡</li>
<li>茶
<ul>
<li>紅茶</li>
<li>綠茶</li>
</ul>
</li>
<li>牛奶</li>
</ul>
</body>
</html>
效果:
每嵌套一層,它的符號是不一樣的,你可以試試再嵌套一層看看效果。
當然,不同列表類型也可互相嵌套,根據顯示效果可以自由使用,一般建議不要這樣使用,不同類型列表顯示在一塊不是很美觀。如下面無序列表中嵌套有序列表:
<html>
<body>
<h4>一個嵌套列表:</h4>
<ul>
<li>咖啡</li>
<li>茶
<ul>
<li>紅茶</li>
<li>綠茶
<ol>
<li>中國茶</li>
<li>非洲茶</li>
</ol>
</li>
</ul>
</li>
<li>牛奶</li>
</ul>
</body>
</html>
效果如下:
列表是網頁制作中經常會使用的標簽,比如在制作網頁導航欄菜單時會經常用到ul列表,以后會講如何通過ul標簽制作一個下拉菜單,感謝您閱讀及關注,祝你學習愉快。
上篇:前端入門——html 文字格式、標題與段落
下篇:前端入門——html 超鏈接
*請認真填寫需求信息,我們會在24小時內與您取得聯系。