欧美特黄不卡,涩涩视频在线,成人国产精品一区二区网站,亚洲一区二区三区欧美

當(dāng)前位置:雨林木風(fēng)下載站 > 技術(shù)開發(fā)教程 > 詳細頁面

如何在asp.net頁面上放置的控件上完成左右鍵菜單,一起對之設(shè)置(1

如何在asp.net頁面上放置的控件上完成左右鍵菜單,一起對之設(shè)置(1

更新時間:2022-05-08 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

前言:

大家也許開發(fā)了很多windows界面的解決方案,對于菜單的使用可以說是滾瓜爛熟,當(dāng)然,如何實現(xiàn)windows窗口上的左右鍵功能也是不在話下。

但是如何在web窗口實現(xiàn)菜單呢?

很多人說。用javascript或者是vbscript來實現(xiàn)。完全正確。一般說來是在前臺用腳本語言來寫。現(xiàn)在也有基于不是用腳本語言的控件的方式來實現(xiàn)的方式。用控件來實現(xiàn)的方法大家可以參考我寫的《基于asp.net的webmenu的數(shù)據(jù)操作》一文,用控件很容易的。

我說的是老生常談的問題,如果高手路過,就請你給予指正,還望不要給太多的磚頭。

正文:

實現(xiàn)左右鍵的彈出,以及選擇左右鍵的不同菜單,點擊菜單后可以有不同的處理結(jié)果,例如彈出有模式和無模式對話框等。

如下,一一介紹:

(1):在控件的Click事件和dblClick事件中彈出菜單。

前提條件:控件支持單擊和雙擊事件。(不支持單擊和雙擊的控件恐怕不多吧。嘿嘿)

在控件的Click事件和dblClick事件里面添加自己的菜單函數(shù)。這個函數(shù)一般是在屏幕上畫一個表格。達到彈出菜單的作用。

如下為我的畫表格的原型函數(shù):

function showdiv(div,XPos,YPos)

其中,Div為菜單的類型。比如類型為“變電站”或者“線路”,二者彈出的菜單的內(nèi)容是不同的。通過這來實現(xiàn)在同一個控件上彈出多個菜單的作用。

其中,XPos,YPos的作用為在什么地方彈出菜單,一般說來在鼠標(biāo)指針的偏下一點和偏右一點為益。

題外:怎么得到XPos,YPos,可以通過取得屏幕坐標(biāo)來獲取。

此函數(shù)由JavaScript實現(xiàn)。

假設(shè)為“線路”,那么我們看到的為上文的圖示,怎么才實現(xiàn)畫框的呢?我的實現(xiàn)方法示在本函數(shù)里面調(diào)用添加菜單函數(shù)。本函數(shù)實際上是在數(shù)組里面添加值,將每個菜單的項目添加到數(shù)組中,在下面的menustyle函數(shù)中將數(shù)組的值取出來。本函數(shù)的原型如下:

addMenuItem(text, url, img)

其中,text為菜單上顯示的內(nèi)容

其中,Url為點擊改菜單后鏈接到什么地方的地址。

Image是可選項目。表示是圖形時,菜單上顯示圖形。

如下為本函數(shù):

function addMenuItem(text, url, img){

if(img) menuItems[menuItemNum] = new Array(text, url, img);

elseif(text) menuItems[menuItemNum] = new Array(text, url);

else menuItems[menuItemNum] = new Array(); menuItemNum++;

}



同時還可增加菜單的風(fēng)格以及菜單的點擊和mousemove效果,函數(shù)為:menuStyle(),無參數(shù)。

最后,要顯示菜單,顯示菜單函數(shù)為:showMenu(),無參數(shù)。

這樣就實現(xiàn)了菜單的彈出。

如下為完整的實例代碼:

sub GNV_click(ByVal Button, ByVal Key, ByVal WindowCoord, ByVal WorldCoord)

{

select case button

case 1 '左鍵

set m_oCurrentCoordinate = WindowCoord ‘表示鼠標(biāo)位置,其他的不同控件要通過不同的方法來獲取這值。

call showdiv("線路",m_oCurrentCoordinate.x ,m_oCurrentCoordinate.y + 15)

}

以上代碼由vbscript實現(xiàn)

如下由javascript實現(xiàn)

function showdiv(div,XPos,YPos)

{ //重定義數(shù)組

menuItemNum = 0;

menuItems = Array();

menuXPos = XPos;

menuYPos = YPos;

switch(div){

case "菜單類型":

//重定義高度和寬度

menuWidth = 143;

//menu width 每個漢字寬度24

menuHeight = 158; //menu height



addMenuItem();



break;

case "另外一個菜單類型": //另外一種情況。略

default:

break;

}

menuStyle(); //菜單風(fēng)格

showMenu(); //顯示菜單

}

menuStyle(); //函數(shù)略,在下面的選擇菜單和點擊菜單中使用。

function showMenu(){

menuPopup.show(menuXPos, menuYPos, menuWidth, menuHeight, document.body); return false;

}



溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

主站蜘蛛池模板: 岫岩| 承德县| 阿巴嘎旗| 法库县| 乡城县| 朝阳市| 门头沟区| 正镶白旗| 改则县| 饶阳县| 天镇县| 嘉祥县| 迭部县| 浪卡子县| 襄城县| 商河县| 阜城县| 大新县| 托克托县| 赣州市| 于田县| 桐庐县| 金平| 沅江市| 玛沁县| 本溪| 朝阳区| 宁晋县| 阳谷县| 阜平县| 佛教| 固原市| 八宿县| 清镇市| 来凤县| 化德县| 新津县| 保康县| 都安| 绥芬河市| 房山区|