精华内容
下载资源
问答
  • 易语言禁止超级列表框调整列宽又可以响应表头单击源码,禁止超级列表框调整列宽又可以响应表头单击,禁调列宽响应点击,处理,排序子程序,SetWindowLong,CallWindowProc,SendMessage
  • 易语言源码禁止超级列表框调整列宽又可以响应表头单击.rar 易语言源码禁止超级列表框调整列宽又可以响应表头单击.rar 易语言源码禁止超级列表框调整列宽又可以响应表头单击.rar 易语言源码禁止超级列表框调整列宽...
  • 禁止超级列表框调整列宽又可以响应表头单击
  • 易语言超级列表框调整列宽源码,超级列表框调整列宽,禁调列宽响应点击,处理,排序子程序,SetWindowLong,CallWindowProc,SendMessage
  • Dialog区域外可响应点击事件

    千次阅读 2019-05-28 17:44:25
    用Dialog实现提示显示,一般需要点击两次item才能实现上面的效果,第一次是Dialog响应点击事件,消失提示;第二次点击才Item能接收到。 要实现上面的效果,必须让Activity能接收Dialog区域外...

    遇到这样一个需求,一个RecyclerView布局(GridView九宫格样式),每点击一项,弹出一个气泡提示框,再点击下一项的时候,上一项气泡提示框消失,下一项气泡提示框显示出来。用Dialog实现提示框显示,一般需要点击两次item才能实现上面的效果,第一次是Dialog响应点击事件,消失提示框;第二次点击才Item能接收到。

    要实现上面的效果,必须让Activity能接收Dialog区域外的点击事件,网上找了一圈,参考了这篇文章Android Dialog外部点击事件解决了我的问题,但是文中写的是用Activity样式的Dialog来实现,其实只有Dialog就能实现,只需要在Dialog的构造函数中添加以下两行代码,设置Window的标志位,就可以让Activity响应Dialog区域外的点击事件。特此mark下吧。

    //实现Dialog区域外部事件可以传给Activity
    
    //FLAG_NOT_TOUCH_MODAL作用:即使该window可获得焦点情况下,仍把该window之外的任何event发送到该window之后的其他window
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,
            WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);
    
    //FLAG_WATCH_OUTSIDE_TOUCH作用:如果点击事件发生在window之外,就会收到一个特殊的MotionEvent,为ACTION_OUTSIDE
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH,
            WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);
    Window的Flag事件就好多,具体可以参考这篇文章,WindowManager.LayoutParams的各种flag含义
    再重写Dialog中的onTouch事件,点击Dialog区域外时,把Dialog隐藏掉即可。
    
    getWindow().getDecorView().setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            if (event.getAction() == MotionEvent.ACTION_OUTSIDE) {
                dismiss();
            }
            return true;
        }
    });

    实现上面我说的给列表项添加气泡的效果参考的是这个demo https://github.com/xujiaji/HappyBubble,自己改了改适配,在不同手机上,offsetY感觉计算不大一样。

     

    展开全文
  • 项目开发时,给select赋值,如下:(因为可能用到option的value值,所以没有赋值以为没有影响)  jsp页面: <select name="kiannsya" id="kiannsya" class="inp-percent-70&...

     项目开发时,给select赋值,如下:(因为可能用不到option的value值,所以没有赋值以为没有影响)

     jsp页面:

    <select name="kiannsya" id="kiannsya" class="inp-percent-70" style="display: none;">
        <option value="">小明</option>
        <option value="">小红</option>
    </select>

     jQuery:此时发现onchange事件无法触发。

    $("#kiannsya").on("change", function(){
    		alert(0);
    });

    添加value后,onchange事件可以正常触发。

    <select name="kiannsya" id="kiannsya" class="inp-percent-70" style="display: none;">
        <option value="1">小红</option>
        <option value="2">小明</option>
    </select>

     

    展开全文
  • 列表框属性

    千次阅读 2019-11-22 14:01:41
    列表框的项能全部显示出来时,可以用滚动条来滚动显示。 1. 基础知识 默认的列表框只允许用户单选,需要多选时,须把列表框的风格定义为 LBS_ MULTIPLESEL 和 LBS_EXTENDEDSEL 。列表框提供的其他风格取值可以...

    列表框

    列表框允许用户从多个对象中选择一项或多项,这些对象可以是文本、文件和位图等。当列表框的项不能全部显示出来时,可以用滚动条来滚动显示。

    1. 基础知识
    默认的列表框只允许用户单选,需要多选时,须把列表框的风格定义为 LBS_ MULTIPLESEL 和 LBS_EXTENDEDSEL 。列表框提供的其他风格取值可以控制列表框的外观和操作。例如是否按照列表框各项的名称排序,是否多行排列,是否有滚动条等。

    风格取值                   描述
    LBS_EXTENDEDSEL           //能通过Shift键或者鼠标进行多选
    LBS_HASSTRINGS            //可以用GetText函数得到列表框里选项的字符串
    LBS_MULTICOLUMN           //指定列表框以多列形式显示内容
    LBS_MULTIPLESEL           //用户可以选择多个项
    LBS_NOINTEGRALHEIGHT      //当应用程序创建列表框时,列表框的大小由系统指定
    LBS_NOREDRAW              //列表框不响应用户的修改,可以通过发送WM_REDRAW 来取消该设置
    LBS_NOTIFY                //让主窗口接收列表框的任何改变的消息
    LBS_OWNERDRAWFIXED        //主窗口负责列表框的重画,列表框里每项的高度相同
    LBS_0WNERDRAWVARIABLE     //主窗口负责列表框的重画,列表框里每项的高度可以变化
    LBS_SORT                  //按各项名称的字母排序
    LBS_STANDARD              //等同于LBS_SORT和LBS_NOTIFY
    LBS_USETABSTOPS           //允许用户使用Tab键在各项中切换
    LBS_WANTKEYBOARDINPUT     //输入焦点在列表框时,任何键盘输入都会向父窗口发送WM_VKEYTOITEM或者WM_CHARTOITEM消息
    LBS_DISABLENOSCROLI       //当列表框的项不够时,垂直滚动条禁活:没有该属性时,滚动条隐藏

    当用户对列表框进行了操作时,就会向主窗口发送一条消息。列表框的消息类型比较简单,主要是单击、双击和选择等。同编辑框一样,列表框也会遇到内存不够的问题,所以消息类型中含有这一项。消息总是通过WM_COMMAND的形式发送给主窗口的。其中,wParam的低位字节表示列表框的标识符,高位字节表示消息的类型,lParam表示主窗口句柄。列表框的消息类型如表所示。

    消息类型                   描述
    LB_DELETESTRING           //删除指定的选项
    LB_ADDFILE                //向列表框里增加一个文件(包括目录)
    LB_FINDSTRING             //在列表框里查找指定的项
    LB_FINDSTRlNGEXACT        //精确查找指定的项
    LB_GETCOUNT               //得到列表框里项的数目
    LB_GETCURSEL              //返回当前被选中选项的序号
    LB_GETSEL                 //得到被选项的状态,如果出错,则返回零值
    LB_GETSELCOUNT            //得到被选中的个数
    LB_GETTEXT                //返回选中的文本,返回值为字符串长度
    LB_GETTEXTLEN             //返回字符串长度
    LB_INITSTORAGE            //向列表框增加项之前存储原来的内容
    LB_INSERTSTRING           //向列表框增加一项,但不重新排序
    LB_ITEMFROMPOINT          //返回离指定点最近项的序号
    LB_RESETCONTENT           //清除列表框里所有的项
    LB_SELECTSTRING           //寻找指定的项
    LB_SELITEMRANGE           //指定选择的范围
    LB_SELITEMRANGEEX         //选定或者删除指定的项
    LB_SETCOLUMNWIDTH         //设置列的宽度
    LB_SETCOUNT               //设置列表框里项的最大数目
    LB_SETCURSEL              //选中指定的项
    LBN_DBLCLK                //发送用户双击的消息
    LBN_ERRSPACE              //发送内存空间不够的消息
    LBN_KILLFOCUS             //当列表框失去焦点时发送该消息
    LBN_SELCANCEL             //当用户取消选择时发送该消息
    LBN_SELCHANGE             //当用户选择改变时发送该消息
    LBN_SETFOCUS              //当输入焦点转移到列表框时发送该消息
    WM_CTLCOLORLISTBOX        //在列表框重画时向父窗口发送该消息
    WM_DELETEITEM             //删除选项
    WM_VKEYTOITEM             //输入焦点在列表框里,用户按键时发送该消息

    鼠标右键WM_CONTEXTMENU 消息就行了。wParam 是点击右键的窗口的句柄,lParam 是鼠标坐标。如果用户使用 SHIFT+F10 来响应菜单,那么 lParam 收到的坐标都是 -1。
    LOWORD(wParam) 子窗口ID
    HIWORD(wParam) 通知码
    Lparam 子窗口句柄

     

    2. 定义列
    增加列需要用列的结构LVCOLUMN,定义如下:

    typedef struct _LVCOLUMN {
    UINT mask;                //定义该列可使用的类型
    int fmt;                  //定义列格式
    int cx;                   //定义列宽度(以像素为单位)
    LPTSTR pszText;           //列内容
    int cchTextMax;           //列内容最大长度
    int iSubItem;             //定义此列序号
    #if (_WIN32_IE >= 0x0300)
    int iImage;               //指向图像
    int iOrder;               //零基列偏移量。列偏移量是从左到右的顺序。例如0列在最左边。
    #endif #if (_WIN32_WINNT >= 0x0600)
    int cxMin;                //指定列宽最小值
    int cxDefault;            //默认列宽
    int cxIdeal;              //只读,作为列宽的理想宽度自动调整宽度大小
    #endif
    } LVCOLUMN, *LPLVCOLUMN;  //结构名称

    使用方法:
    SendMessage(hwnd, LVM_INSERTCOLUMN, 0, (LPARAM)&colmn)
    还有LVM_GETCOLUMN LVM_SETCOLUMN LVM_DELETECOLUMN

     

    3. 改变项
    改变项需要结构体LVITEM,定义如下:

    typedef struct {
    UINT mask;              //设置成员标志,如格式等
    int iItem;              //项目索引
    int iSubItem;           //添加到的列序
    UINT state;             //指明项目状态,如图片,叠加图片
    UINT stateMask;         //指state成员的有效位
    LPTSTR pszText;         //项目内容
    int cchTextMax;         //项目最大长度
    int iImage;             //指向图片索引
    LPARAM lParam;          //特殊值,如果你用SORTITEM它就需要这个,或者别的特别的
    #if (_WIN32_IE >= 0x0300)
    int iIndent;            //图片宽度
    #endif
    #if (_WIN32_WINNT >= 0x0501)
    int iGroupId;           //指向所在的组id
    UINT cColumns;          //需要展示的列数,最大为20
    UINT puColumns;         //返回这个项目所指向的列
    #endif
    #if (_WIN32_WINNT >= 0x0600)
    int piColFmt;           //返回列属性
    int iGroup;             //项目列
    #endif
    } LVITEM, *LPLVITEM;

    使用方法:
    SendMessage(hres, LVM_INSERTITEM, 0, (LPARAM)&item);

    展开全文
  • list control双击事件编辑列表框

    千次阅读 2018-06-01 11:21:06
    关于这点知识网上的资源其实非常多,这里给个讲的非常好的博客链接,希望你们少走点弯路点击打开链接这里我就多加赘述了,这篇博客希望可以让刚入门的人少走点弯路...

    关于这点知识网上的资源其实非常多,这里给个讲的非常好的博客链接,希望你们少走点弯路

    点击打开链接

    环境VS2005

    1、目标:实现在双击列表框时的动态修改,包括:

          1)双击空白处时自动添加一行;

          2)双击已有数据时使用显示编辑框实现动态修改子项。

    2、重点内容:

          1)List Control控件NM_DCLICK消息响应事件;

          2)Edit Control的KillFocus消息响应;

          3)Edit Control的动态显示及隐藏;

          4)List Control获取指定行和列的编号,并获取指定行和列的内容及修改赋值。


    示例


    1、创建基于对话框的MFC应用程序,删除原有的静态文本;

    2、添加一个List Control控件和一个Edit Control控件,并分别关联控制变量m_ListTem和m_EditTest(List Control控件适当调整大小,Edit Control大小不用调整);

    3、初始化对话框函数OnInitDialog中实现List Control控件和Edit Control控件的初始化,代码如下:

    [cpp]  view plain  copy
    1. m_edit.ShowWindow(SW_HIDE);  
    2. CRect rect;  
    3. m_ListTest.GetClientRect(&rect);  
    4. int iLength = rect.Width();  
    5. m_ListTest.SetExtendedStyle(m_ListTest.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);  
    6. m_ListTest.InsertColumn(0, _T("编号"), LVCFMT_CENTER, 40);  
    7. m_ListTest.InsertColumn(1, _T("频率(Hz)"), LVCFMT_CENTER, 80);  
    8. m_ListTest.InsertColumn(2, _T("加速度(g)"), LVCFMT_CENTER, (iLength - 120)/3);  
    9. m_ListTest.InsertColumn(3, _T("速度(m/s)"), LVCFMT_CENTER, (iLength - 120)/3);  
    10. m_ListTest.InsertColumn(4, _T("位移(mm)"), LVCFMT_CENTER, (iLength - 120)/3);  


    4、对话框头文件中添加int型变量m_Row和m_Col,用于保存双击时选中的行和列号,并初始化为-1(未选中状态);

    5、为List Control控件添加NM_DBLCLK消息响应,并添加代码如下:

    [cpp]  view plain  copy
    1. void CListControlDlg::OnNMDblclkListTest(NMHDR *pNMHDR, LRESULT *pResult)  
    2. {  
    3.     LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);  
    4.     // TODO: 在此添加控件通知处理程序代码  
    5.     CRect rc;  
    6.     CString strTemp;  
    7.     NM_LISTVIEW *pNMListView = (NM_LISTVIEW *)pNMHDR;  
    8.     m_Row = pNMListView->iItem;  
    9.     m_Col = pNMListView->iSubItem;  
    10.   
    11.     if (pNMListView->iItem == -1)    //选择空白处,添加一行,并设置焦点为最后一行,第二列  
    12.     {  
    13.         m_Row = m_ListTest.GetItemCount();  
    14.         strTemp.Format(_T("%d"), m_Row + 1);  
    15.         m_ListTest.InsertItem(m_Row,strTemp);  
    16.         m_ListTest.SetItemState(m_Row, LVIS_SELECTED | LVIS_FOCUSED,LVIS_SELECTED | LVIS_FOCUSED);  
    17.         m_ListTest.EnsureVisible(m_Row, FALSE);  
    18.         //m_Col = 1;  
    19.     }  
    20.   
    21.     if (m_Col != 0) // 选择子项  
    22.     {  
    23.         m_ListTest.GetSubItemRect(m_Row, m_Col, LVIR_LABEL, rc);  
    24.         m_edit.SetParent(&m_ListTest);  
    25.         m_edit.MoveWindow(rc);  
    26.         m_edit.SetWindowTextW(m_ListTest.GetItemText(m_Row, m_Col));  
    27.         m_edit.ShowWindow(SW_SHOW);  
    28.         m_edit.SetFocus();//设置Edit焦点  
    29.         m_edit.ShowCaret();//显示光标  
    30.         m_edit.SetSel(0, -1);//全选  
    31.     }  
    32.       
    33.     *pResult = 0;  
    34. }  

    6、为Edit Control控件添加EN_KILLFOCUS消息响应,并添加代码如下:

    [cpp]  view plain  copy
    1. void CListControlDlg::OnEnKillfocusEditInsert()  
    2. {  
    3.     // TODO: 在此添加控件通知处理程序代码  
    4.     CString str;  
    5.     m_edit.GetWindowTextW(str);  
    6.     m_ListTest.SetItemText(m_Row, m_Col, str);  
    7.     m_edit.ShowWindow(SW_HIDE);  
    8. }  

    这篇博客希望可以让刚入门的人少走点弯路

    展开全文
  • 我想实现,在模态对话框编辑里输入几个值,然后点击确定按钮将其添加到组合框列表中,当点击组合框列表里刚添加的项时响应相应消息(如:我在模态对话框四个编辑中输入a、b、c、d,然后点击确定按钮,将a、b、c...
  • MFC列表框控件的动态编辑

    千次阅读 2019-09-10 13:14:41
    在我们进行mfc 编程时,我们需要用到列表框显示各层或各物体的参数设置,同时也希望能编辑其参数。我以前在网上查找,用了CComboListCtrl,这需要3个cpp 和 h 文件,用起来还容易。 最近看到一个文章...
  • 列表框控件简介

    千次阅读 2015-09-29 11:26:36
    列表框可分为单选列表框和多选列表框,顾名思义,单选列表框中一次只能选择一个列表项,而多选列表框可以同时选择多个列表项。  列表框也会向父窗口发送通知消息。这些通知消息及含义如下:  LBN_DBLCLK :...
  • 列表框控件ListBox

    2016-08-16 13:51:31
    前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法。本文要讲的是列表框控件(ListBox)及其使用实例。  列表框控件简介 ...列表框可分为单选列表框和多选列表框,顾名思义,单选列
  • 列表框控件

    千次阅读 2005-04-27 16:28:00
    列表框控件(listbox) [下载例程] 列表框主要用于输入,它允许用户从所列出的表项中进行单项或多项选择,被选择的项呈高亮度显示.列表框具有边框,并且一般带有一个垂直滚动条.列表框分单选列表框和多重选择列表...
  • 列表框通过Swing组件JList产生,其总是在屏幕上占据固定行数的空间。如果要得到列表框中被选中的元素, 只需调用getSelectedValuesList(),它可以产生一个字符串数组 ,内容为被选中的元素名称。 JList组件允许多重...
  • VC6.0 MFC 列表框 列表控件 添加 修改 删除 写在前面:列表框是很常用,并且很重要的一个控件,那么接下来,就跟随我的脚步,去探索它的奥秘吧! 一、未卜先知 1、编译运行后,点击“学生档案信息”,界面如下图所示...
  • 开发中~~ 等差不多开发完了,却发现主页面的button、a元素等都无法响应点击事件,用了onclick=”和jquery绑定事件也是响应,搞了半天,原来是mui框架存在的问题,为了避免有人再瞎折腾浪费时间,想想
  • 列表框与组合框

    千次阅读 2005-05-02 13:26:00
    列表框是窗口类名为...Windows还提供了多种不同风格的标准列表框,其中包括多选列表框、多列显示的列表框和可以显示图象的拥有者画(Owner-draw)列表框等。另一种与列表框相关的控件是组合框,该控件预定义类名为
  • 列表框消息

    2013-10-24 22:54:59
    CListCtrl控件主要事件及LVN_ITEMCHANGED消息和鼠标双击列表事件的处理 LVN_BEGINDRAG 鼠标左键正在被触发以便进行拖放操作(当鼠标左键开始拖拽列表视图控件中的项目时产生) LVN_BEGINRDRAG 鼠标右键正在被触发...
  • MFC之列表框控件ListBox

    千次阅读 2015-09-01 14:55:42
    列表框可分为单选列表框和多选列表框,顾名思义,单选列表框中一次只能选择一个列表项,而多选列表框可以同时选择多个列表项。  列表框也会向父窗口发送通知消息。这些通知消息及含义如下:  LBN_DBLCLK :用户...
  • 常用控件:列表框控件ListBox

    千次阅读 2017-09-29 10:10:18
    列表框可分为单选列表框和多选列表框,顾名思义,单选列表框中一次只能选择一个列表项,而多选列表框可以同时选择多个列表项。  列表框也会向父窗口发送通知消息。这些通知消息含义如下:  LBN_DBLCLK:用户...
  • 列表框控件(listbox)消息

    千次阅读 2017-03-15 10:21:37
    列表框主要用于输入,它允许用户从所列出的表项中进行单项或多项选择,被选择的项呈高亮度显示.列表框具有边框,并且一般带有一个垂直滚动条.列表框分单选列表框和多重选择列表框两种.单选列表框一次只能选择一个...
  • 组合框和列表框都可以在界面上同时显示多项内容,并且允许用户选中其中的某项内容,列表框还允许同时选择多项。这两种控件的使用,有很多相似之处;2.3.1 技术要点: Windows 中预先定义了一系列“CB_ ”开头的消息...
  • MFC控件listbox(列表框

    千次阅读 2014-11-14 10:06:54
    MFC控件listbox(列表框) 定义控件对应变量: 假定已经创建了一个Dialog,并且给该Dialog建立了类,并且从控件工具箱将 Combo Box 控件拖放到上面。打开 Class Wizard,添加控件对应变量,如:CComboBox m_...
  • Win7链接列表框是仿Windos7开始菜单项开发的控件,同样支持右侧箭头,由于使用场合的不同,本控件中右键箭头作为菜单扩展,而是通过事件触发式响应。 先上图 代码很简单,点击对右侧箭头区域点击响应,此处...
  • Win32字控件-列表框

    千次阅读 2013-09-28 12:25:47
    LBS_DISABLENOSCROLL 当列表框不包含足够的项目移动时,列表框中显示禁用垂直滚动条。如果没有此样式当列表框不包含足够的项目时,滚动条隐藏。 LBS_EXTENDEDSEL 使用shift键和鼠标或特定组合键,用户可以选择多个项...
  • 列表框控件(listbox)

    2010-05-06 18:22:00
    列表框(listbox)主要用于输入,它允许用户从所列出的表项中进行单项或多项选择,被选择的项呈高亮度显示.列表框具有边框,并且一般带有一个垂直滚动条.列表框分单选列表框和多重选择列表框两种.单选列表框一次...
  • 下拉列表框实现

    万次阅读 2010-09-10 16:02:00
    下拉列表框实现 一、实现框架 1 二、实现根视图 1 三、实现DropDownList类 2 四、一些改进 6 cocoa touch提供下拉框控件,因为他们提供了UIPickerView。为什么还要使用已经成为windows标准控件之一的...
  • 列表框控件简介   列表框给出了一个选项清单,允许用户从中进行单项或多项选择,被选中的项会高亮显示。...LBN_ERRSPACE :列表框不能申请足够的动态内存来满足需要 LBN_KILLFOCUS :列表框失去输入焦点 LBN_
  • 今天发现个问题UGUI的ScrollRect组件会和放在它上面的button或者toggle等组件有事件响应的冲突,具体体现为上面的组件会遮挡下面的响应,在button或者toggle等组件上出现只能点击不能滑动的效果,要想滑动必须点旁边...
  • 前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法。...列表框可分为单选列表框和多选列表框,顾名思义,单选列表框中一次只能选择一个列表项,而多选列表框可以同时选择多个列表项。  列

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 97,402
精华内容 38,960
关键字:

列表框不响应点击事件