• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 124,  comments - 29,  trackbacks - 0
            建議文件conn.inc
            1<%
            2set conn=server.createobject("adodb.connection")
            3provider="provider=microsoft.jet.oledb.4.0;"
            4DBPath ="data source=" & Server.MapPath("db.mdb")
            5conn.Open provider & DBPath
            6%>

            然后再每個(gè)頁(yè)前面加一句<!--#include file="conn.inc--">
            posted @ 2008-06-08 21:54 天書(shū) 閱讀(146) | 評(píng)論 (0)編輯 收藏
            Public Function SplitPageShow(ByRef rs)
                rs.PageSize 
            = 5 'pagesize屬性指定了每頁(yè)要顯示的記錄條數(shù) 
                Page = "1"
                Page 
            = CLng(Request("Page")) 'string型轉(zhuǎn)化為long型 
                If Page < 1 Then Page = 1 
                
            If Page > rs.PageCount Then Page = rs.PageCount 
                
            If Page <> 1 Then 
                   Response.Write 
            "<A HREF=Manage.asp?Page=1>第一頁(yè)</A>"
                   Response.Write 
            "<A HREF=Manage.asp?Page="& (Page-1& ">上一頁(yè)</A>" 
                
            End If 
                
            If Page <> rs.PageCount Then 
                   Response.Write 
            "<A HREF=Manage.asp?Page=" & (Page+1& ">下一頁(yè)</A>" 
                   Response.Write 
            "<A HREF=Manage.asp?Page="& rs.PageCount & ">最后一頁(yè)</A>" 
                
            End If 
                Response.write
            "頁(yè)碼:" & Page & "/" & rs.PageCount & "</font>" 
                
            '每一頁(yè)的顯示 
                
                
            '循環(huán)顯示每條記錄 
                rs.AbsolutePage = Page '把頁(yè)碼賦給absolutepage屬性從而知當(dāng)前頁(yè)的首條記錄號(hào) 
                For iPage = 1 To rs.PageSize
                Response.WRITE 
            "<TR><TD bgcolor='#FFFFFF'>" & rs("ID"& "</TD>" 
                Response.WRITE 
            "<TD bgcolor='#FFFFFF'>" & rs("Title"& "</TD>" 
                Response.WRITE 
            "<TD bgcolor='#FFFFFF'>" & rs("CName"& "</TD>" 
                Response.WRITE 
            "<TD bgcolor='#FFFFFF'><a href='Update.asp?id="&rs("ID"&"'>修改</a></TD>" 
                Response.WRITE 
            "<TD bgcolor='#FFFFFF'><a href='DeleteProcess.asp?id="& rs("ID"&"'>刪除</a></TD></TR>"
                rs.MoveNext 
                
            If rs.EOF Then Exit For 
                
            Next 

            End Function
            posted @ 2008-06-08 21:44 天書(shū) 閱讀(142) | 評(píng)論 (0)編輯 收藏

            事件是最實(shí)用的委托應(yīng)用程序之一。
            EventHandler這是一個(gè)事件委托,定義在system.EventHandler;
            btnOne.Click+=new EventHandler(Button_Click);
            btnTwo.Click+=new EventHandler(Button_Click);

            EventHandler委托沒(méi)有返回值,參數(shù)必需是object和EventArgs
            private void Button_Click(object sender,Eventargs e)
            {
            }
            上面定義的是一個(gè)接收器

            操作系統(tǒng)對(duì)每個(gè)輸入設(shè)備產(chǎn)生的操作,如按下MOUSE或鍵盤,就會(huì)發(fā)送一條消息,應(yīng)用程序就得捕獲消息,并根據(jù)消息調(diào)用委托,通過(guò)委托調(diào)用相應(yīng)的過(guò)程處理消息,沒(méi)有處理的消息再發(fā)送給操作系統(tǒng),由操作系統(tǒng)處理。
            發(fā)送消息:按下MOUSE左鍵,首先由操作系統(tǒng)捕獲交給當(dāng)前應(yīng)用程序,再由當(dāng)前應(yīng)用程序交給當(dāng)前窗口,如果當(dāng)前窗口處理完就告訴應(yīng)用程序由應(yīng)用程序告訴操作系統(tǒng)。如果當(dāng)前程序沒(méi)的處理也告訴操作系統(tǒng),由它處理。如果當(dāng)前窗口處理就根據(jù)當(dāng)前窗口的情況及狀態(tài)通知委托,由委托調(diào)用用定義的處理過(guò)程,或者交回操作系統(tǒng)。

            posted @ 2008-05-20 12:53 天書(shū) 閱讀(204) | 評(píng)論 (0)編輯 收藏

            1:地板透明化注:透明物體最后畫(huà)出
                g_pd3dDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE );
                g_pd3dDevice->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA );
                g_pd3dDevice->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);

            2:畫(huà)出反射對(duì)象注:一份頂點(diǎn)數(shù)據(jù)通過(guò)矩陣變換畫(huà)出反射對(duì)象
             D3DXMATRIXA16 tmp;
             D3DXMatrixScaling(&tmp,1,-1,1);//通過(guò)放縮矩陣來(lái)實(shí)現(xiàn)倒影(或D3DXMatrixReflect(&tmp,&plane);)

            3:Stencil Buffer 模板緩存啟用Stencil Buffer保證轉(zhuǎn)到地板下面時(shí)看不到實(shí)際存在的反射物體以免漏餡
            鏡面既要最先畫(huà)又要最后畫(huà),那么畫(huà)兩遍,最先畫(huà)時(shí)設(shè)置Aphha混合如下不改變后臺(tái)緩存只是在模板緩存中標(biāo)記鏡面區(qū)域?yàn)?.
            最先畫(huà)地板時(shí):
             //設(shè)置模板緩存
             g_pd3dDevice->SetRenderState(D3DRS_STENCILENABLE,true);
             g_pd3dDevice->SetRenderState(D3DRS_STENCILFUNC,D3DCMP_ALWAYS);
             g_pd3dDevice->SetRenderState(D3DRS_STENCILREF,0x1);
             g_pd3dDevice->SetRenderState(D3DRS_STENCILMASK,0xffffffff);
             g_pd3dDevice->SetRenderState(D3DRS_STENCILWRITEMASK,0xffffffff);
             g_pd3dDevice->SetRenderState(D3DRS_STENCILZFAIL,D3DSTENCILOP_KEEP);
             g_pd3dDevice->SetRenderState(D3DRS_STENCILFAIL,D3DSTENCILOP_KEEP);
             g_pd3dDevice->SetRenderState(D3DRS_STENCILPASS,D3DSTENCILOP_REPLACE);
             

             //繪制地板鏡面
             g_pd3dDevice->SetRenderState(D3DRS_ZENABLE, FALSE);
             g_pd3dDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
             g_pd3dDevice->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_ZERO);
             g_pd3dDevice->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_ONE);
            繪制物體影像時(shí)啟用模板緩存并對(duì)其函數(shù)狀態(tài)進(jìn)行設(shè)置:
                 g_pd3dDevice->SetRenderState(D3DRS_STENCILENABLE,true);
                 g_pd3dDevice->SetRenderState( D3DRS_STENCILFUNC,D3DCMP_EQUAL);
            最后在渲染時(shí)照常:
                g_pd3dDevice->SetStreamSource( 0, obj.g_pVB, 0, sizeof(CUSTOMVERTEX) );
                g_pd3dDevice->SetFVF( D3DFVF_CUSTOMVERTEX );
                g_pd3dDevice->SetIndices( obj.g_pIB );
                g_pd3dDevice->SetTexture( 0, g_pTexture[obj.textureID] ); //設(shè)置紋理
                g_pd3dDevice->DrawIndexedPrimitive(D3DPT_TRIANGLELIST,0,0,obj.numOfVertex,0,obj.numOfFace);
            其中 g_pd3dDevice->DrawIndexedPrimitive(D3DPT_TRIANGLELIST,0,0,obj.numOfVertex,0,obj.numOfFace);這句話根據(jù)模板緩存的設(shè)置及開(kāi)啟情況,寫(xiě)入后臺(tái)緩沖區(qū)的同時(shí)寫(xiě)入模板緩存。或在與模板緩存中數(shù)據(jù)比較后決定是否要往后臺(tái)緩沖區(qū)中寫(xiě)。

            posted @ 2008-05-17 19:25 天書(shū) 閱讀(1977) | 評(píng)論 (3)編輯 收藏
            D3D中燈光的表現(xiàn)注意事項(xiàng):
            1:一定要注意平面法向量的方向,進(jìn)而再確定光源的位置。到底在平面的哪一側(cè)才能把平面照亮。
            2:因?yàn)辄c(diǎn)光源中只有少數(shù)幾條對(duì)平面其作用的光線,所以當(dāng)平面離光源越遠(yuǎn)(照亮范圍內(nèi))照亮的區(qū)域越大。
            3:光源照射后渲染三角形時(shí)當(dāng)平面被分割的三角形越多,三角形頂點(diǎn)在光照范圍內(nèi)時(shí)容易照亮。
            posted @ 2008-05-12 14:08 天書(shū) 閱讀(220) | 評(píng)論 (0)編輯 收藏
            漫反射顏色,紋理顏色,光照效果表現(xiàn)
                    光源所造成的明暗效果是表現(xiàn)在Diffuse上,也就是設(shè)定的Material上的。紋理要想表現(xiàn)出光照的明暗效果,就要啟用紋理階段混合了
             1   D3DMATERIAL9 mtrl;
             
            2   ZeroMemory( &mtrl, sizeof(D3DMATERIAL9) );
             
            3
             
            4   mtrl.Diffuse.r = mtrl.Ambient.r = 1.0f;
             
            5   mtrl.Diffuse.g = mtrl.Ambient.g = 1.0f;
             
            6   mtrl.Diffuse.b = mtrl.Ambient.b = 1.0f;
             
            7   mtrl.Diffuse.a = mtrl.Ambient.a = 0.0f;
             
            8   g_pd3dDevice->SetMaterial( &mtrl );
             
            9   //漫反射顏色和紋理顏色疊加,光照效果折痕表現(xiàn)。光源效果只表現(xiàn)在diffuse上
            10   g_pd3dDevice->SetTextureStageState(0,D3DTSS_COLOROP,D3DTOP_MODULATE);
            11   g_pd3dDevice->SetTextureStageState(0,D3DTSS_COLORARG1,D3DTA_TEXTURE);
            12   g_pd3dDevice->SetTextureStageState(0,D3DTSS_COLORARG2,D3DTA_DIFFUSE);

                   
            posted @ 2008-04-30 11:00 天書(shū) 閱讀(314) | 評(píng)論 (0)編輯 收藏
             cctype開(kāi)頭的c表示ctype程序是c++語(yǔ)言繼承自c語(yǔ)言的一部分。<cctype>頭文件為操作字符串提供了有用的函數(shù)
            isspace(c)        如果c是一個(gè)空白字符就返回真
            isalpha(c)         如果c是一個(gè)文字字符就返回真
            isdigit(c)           如果c是一個(gè)數(shù)字字符就返回真
            isalnum(c)         如果c是一個(gè)字母或數(shù)字就返回真
            ispunct(c)          如果c是一個(gè)標(biāo)點(diǎn)符號(hào)就返回真
            isupper(c)         如果c是一個(gè)大寫(xiě)字母就返回真
            islower(c)          如果c是一個(gè)小寫(xiě)字母就返回真
            toupper(c)         產(chǎn)生c對(duì)應(yīng)的大寫(xiě)字母
            tolower(c)         產(chǎn)生c對(duì)應(yīng)的小寫(xiě)字母
            posted @ 2008-04-27 10:16 天書(shū) 閱讀(487) | 評(píng)論 (0)編輯 收藏

                        c++標(biāo)準(zhǔn)模板庫(kù)中表示大小的類型是一個(gè)無(wú)符號(hào)整數(shù)類型,這種類型不存放負(fù)值。 比如:vector<T> homework;  homework.size()-100會(huì)生成無(wú)符號(hào)類型的結(jié)果,也就是說(shuō)它永遠(yuǎn)不會(huì)比0小,即便homework.size()<100。
                        不管什么時(shí)候,如果一個(gè)表達(dá)式中同時(shí)出現(xiàn)普通的整數(shù)和無(wú)符號(hào)類型的整數(shù),普通的整數(shù)就會(huì)被轉(zhuǎn)換成無(wú)符號(hào)類型。一個(gè)值得注意的地方是:vector<double>::size_type,與所有標(biāo)準(zhǔn)庫(kù)表示大小的類型相同,也是一個(gè)無(wú)符號(hào)整數(shù)類型。

            posted @ 2008-04-24 13:43 天書(shū) 閱讀(501) | 評(píng)論 (0)編輯 收藏

            vector<NODE>::iterator FindMin(vector<NODE> &vect)
            {
             vector<NODE>::iterator min = vect.begin();
             vector<NODE>::iterator iter = vect.begin();
             while(iter != vect.end())
             {
              if((*itor).Value < (*min).Value)
              {
               min = iter;
              }
              iter ++;
             }
             return min;
            }

                    iterator的概念源自于對(duì)遍歷一個(gè)線性容器工具的抽象,即如何你能訪問(wèn)這個(gè)容器的某個(gè)元素。對(duì)于最簡(jiǎn)單的數(shù)組,當(dāng)然可以用數(shù)組的索引值,因?yàn)閿?shù)組是連續(xù)存放在內(nèi)存中的;但對(duì)于鏈表,就必須用指針。除此之外,還有還有很多種數(shù)據(jù)結(jié)構(gòu)需要提供一個(gè)方便的工具來(lái)訪問(wèn)其中的元素,方法有ID,關(guān)鍵字等等。為了統(tǒng)一所有的容器的這種工具的使用,一般提供一整套容器的開(kāi)發(fā)者就會(huì)用一種方式來(lái)表示各種容器的訪問(wèn)工具。例如C++   STL就是使用iterator。MFC自己的容器使用position。C#和java也有自己的方法,但方法是不變的。  
                    iterator的用法可以被統(tǒng)一,但不同的底層容器實(shí)現(xiàn)其iterator的原理是不一樣的。例如iterator++你可以理解為移動(dòng)到容器的下一個(gè)元素,如果底層如果是數(shù)組,把索引值加一就行;如果底層是鏈表,就得執(zhí)行類似于m_pCurrent   =   m_pCurrent->pNext;的操作。因此每種容器都有自己的iterator實(shí)現(xiàn)方法。
              C++   STL   iterator的常用方法有:  
              iterator++     移到下個(gè)元素  
              iterator--     移到上個(gè)元素  
              *iterator       訪問(wèn)iterator所指元素的值]  
                <   >   ==   !=     iterator之間的比較,例如判斷哪個(gè)元素在前  
              iterator1   +   iterator2     iterator之間的加法運(yùn)算,類似于指針加法

            posted @ 2008-04-23 13:27 天書(shū) 閱讀(5016) | 評(píng)論 (0)編輯 收藏
            C++ Lists(鏈表)

            Lists將元素按順序儲(chǔ)存在鏈表中. 與 向量(vectors)相比, 它允許快速的插入和刪除,但是隨機(jī)訪問(wèn)卻比較慢.

            assign() 給list賦值
            back() 返回最后一個(gè)元素
            begin() 返回指向第一個(gè)元素的迭代器
            clear() 刪除所有元素
            empty() 如果list是空的則返回true
            end() 返回末尾的迭代器
            erase() 刪除一個(gè)元素
            front() 返回第一個(gè)元素
            get_allocator() 返回list的配置器
            insert() 插入一個(gè)元素到list中
            max_size() 返回list能容納的最大元素?cái)?shù)量
            merge() 合并兩個(gè)list
            pop_back() 刪除最后一個(gè)元素
            pop_front() 刪除第一個(gè)元素
            push_back() 在list的末尾添加一個(gè)元素
            push_front() 在list的頭部添加一個(gè)元素
            rbegin() 返回指向第一個(gè)元素的逆向迭代器
            remove() 從list刪除元素
            remove_if() 按指定條件刪除元素
            rend() 指向list末尾的逆向迭代器
            resize() 改變list的大小
            reverse() 把list的元素倒轉(zhuǎn)
            size() 返回list中的元素個(gè)數(shù)
            sort() 給list排序
            splice() 合并兩個(gè)list
            swap() 交換兩個(gè)list
            unique() 刪除list中重復(fù)的元素
            posted @ 2008-04-23 13:02 天書(shū) 閱讀(447) | 評(píng)論 (0)編輯 收藏
            僅列出標(biāo)題
            共13頁(yè): First 5 6 7 8 9 10 11 12 13 

            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(5)

            隨筆檔案

            文章分類

            文章檔案

            好友的Bolg

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久久久亚洲AV片无码下载蜜桃| 久久成人国产精品| 亚洲精品成人久久久| 日韩乱码人妻无码中文字幕久久| 国产亚洲精久久久久久无码| 国产免费久久精品丫丫| 精品久久久一二三区| 久久成人影院精品777| 久久久久97国产精华液好用吗| 久久人人爽人人人人片av| 91视频国产91久久久| 国产精品久久婷婷六月丁香| 99久久99这里只有免费的精品| 久久久亚洲精品蜜桃臀| 久久久噜噜噜久久熟女AA片 | 国产69精品久久久久APP下载| 久久精品国产亚洲av麻豆色欲| 2021少妇久久久久久久久久| 色99久久久久高潮综合影院| 精品国产乱码久久久久久1区2区| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 影音先锋女人AV鲁色资源网久久| 91精品国产综合久久香蕉 | 嫩草伊人久久精品少妇AV| 久久婷婷五月综合97色直播| 久久精品国产亚洲一区二区| 无码AV波多野结衣久久| 久久亚洲电影| 久久综合色区| 久久青青草原精品国产不卡| 亚洲国产精品久久久久婷婷软件| 国产精品99久久免费观看| 无码AV中文字幕久久专区| 久久SE精品一区二区| 一本久久精品一区二区| 亚洲精品国精品久久99热| 午夜精品久久久内射近拍高清 | 亚洲国产成人久久一区WWW| 久久久久亚洲AV无码专区网站 | 人人狠狠综合久久亚洲婷婷| 久久精品夜夜夜夜夜久久|