zoukankan      html  css  js  c++  java
  • C#如何获得文本框中焦点所在的行数

    调用API库:

    [DllImport("user32.dll", EntryPoint = "SendMessageA")]
    private static extern int SendMessage(IntPtr hwnd, int wMsg, int wParam, StringBuilder lParam);
    
    [DllImport("user32 ")]
    private static extern IntPtr SendMessage(IntPtr hWnd, int msg, int wParam, int lParam);
    

    在函数里调用API函数即可:

    int EM_LINEINDEX = 0xBB;
    int EM_LINEFROMCHAR = 0xC9;
    int EM_GETSEL = 0xB0;
    int EM_GETLINE = 0xC4;
    
    //通过API完成很简单的 
    //通过向文本框传递EM_LINEFROMCHAR消息可以得到光标所在的行数 
    int Row = (int)SendMessage(txtSendData.Handle, EM_LINEFROMCHAR, -1, 0);
    
    //通过向文本框传递EM_GETSEL消息可以得到编辑控件中一段选定内容的起点与终点字符的个数 
    int s = (int)SendMessage(textBox1.Handle, EM_GETSEL, 0, 0);
    //通过向文本框传递EM_GETSEL消息可以得到每一行的第一个字符在全文中的字符序号 
    int li = (int)SendMessage(textBox1.Handle, EM_LINEINDEX, -1, 0);
  • 相关阅读:
    CentOS7安装node环境
    【异常】update更新java.sql.SQLException: Duplicate entry '2019-07-30 00:00:00-110100' for key
    MySQL查询多行重复数据SQL
    Phoenix批量提交优化,官网的demo
    (转) 读懂IL
    Docker
    Docker
    Rest之路
    (转)Docker
    Docker
  • 原文地址:https://www.cnblogs.com/zpehome/p/3152630.html
Copyright © 2011-2022 走看看