c#winform学习(二)

●·● 目录:

A1 …………DateTimePicker 类
A2 …………Bitmap 类
A3 …………ImageList 类
A4 …………Clipboard 类
A5 …………IDataObject 接口
A6 …………vScrollBar 类
A7 …………NumericUpDown 类
A8 …………ToolTip 类
A9 …………SoundPlayer 类

G1 …………ListView 类
G2 …………ListViewItem 类
G3 …………TreeView 类
G4 …………TreeNode 类
G5 …………Keys 枚举
G6 …………InputLanguage 类
G7 …………ImeMode 枚举
G8 …………SendKeys 类
G9 …………Cursor 类

U1 …………Screen 类
U2 …………MessageBox 类
U3 …………DataGridView 类
  DataGridViewCellStyle 类
  DataGridViewCell 类
  DataGridViewCellCollection 类
  DataGridViewColumn 类
  DataGridViewColumnCollection 类
  DataGridViewRow 类
  DataGridViewRowCollection 类
  DataGridViewSelectedRowCollection 类
  举例:清空数据和导入数据的方法
U4 …………ContextMenuStrip 类
  ToolStripItemCollection 类
  ToolStripItem 类
  ToolStripMenuItem 类
U5 …………Application 类
U6 …………Help 类
U7 …………SystemInformation 类
U8 …………PropertyGrid 类
U9 …………Webbrowser 类
Ua …………HtmlDocument 类
Ub …………HtmlElement 类

--------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A1个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●DateTimePicker 类

c#winform学习(二)_第1张图片

1.表示一个 Windows 控件,该控件用来让用户选择日期和时间并以指定的格式显示此日期和时间。

2. DateTimePicker 属性:

  • Format:获取或设置控件中显示的日期和时间格式。
      Long、Short、Time、Custom
  • ShowUpDown:获取或设置一个值,该值指示是否使用数值调节钮控件(也称为 up-down 控件)调整日期/时间值。
  • Value:显示当前时间。
    • Year:
    • Month:
    • Day:
    • DayOfWeek:
    • DayOfYear:
    • AddYears:
      dateTimePicker1.Value = dateTimePicker1.Value.AddYears(2);
      //如果不赋值的话,那么不会有变化的!
    • AddMonths:
    • AddDays:
    • Date:
  • ShowCheckBox:获取或设置一个值,该值指示在选定日期的左侧是否显示一个复选框。选中时候可以修改,配合ShowUpDown使用,不选中,不可以修改!
  • CustomFormat:获取或设置自定义日期/时间格式字符串。Format属性设置为:Custom
    时间格式参考:Click Here!

--------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A2个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●Bitmap 类

1.Bitmap是用于处理由像素数据定义的图像的对象。

2. Bitmap 构造函数:

  • Bitmap(Image):从指定的现有图像初始化Bitmap类的新实例。
  • Bitmap(Stream):从指定的数据流初始化Bitmap类的新实例。
  • Bitmap(String):从指定的文件初始化Bitmap类的新实例。
  • Bitmap(Int32, Int32):用指定的大小初始化 Bitmap 类的新实例。
    View Code - 遍历每一个像素
    View Code - 举例

3. Bitmap 方法:

  • GetPixel(x, y):获取此Bitmap中指定像素的颜色。【屌】
  • SetPixel(x, y, color):设置此Bitmap中指定像素的颜色。
  • MakeTransparent:使默认的透明颜色对此Bitmap透明。
  • MakeTransparent(Color):使指定的颜色对此Bitmap透明。
  • FromHicon(IntPtr hicon):从图标的 Windows 句柄创建Bitmap。【静态】
  • FromHBitmap(IntPtr hbitmap):【静态】。
  • Save(String):将该Image保存到指定的文件或流。
  • Save(String, ImageFormat):将此Image以指定格式保存到指定文件。
  • RotateFlip:旋转、翻转或者同时旋转和翻转Image。【枚举】

4. Bitmap 属性:

  • Height:获取此Image的高度(以像素为单位)。
  • Width:获取此Image的宽度(以像素为单位)。
  • HorizontalResolution:获取此Image的水平分辨率(以“像素/英寸”为单位)。
  • VerticalResolution:获取此Image的垂直分辨率(以“像素/英寸”为单位)。

command = axToolbarControl1.CommandPool.get_Command(0);
Bitmap uiIcon = new Bitmap(@"E:\PICTURES\头像\海贼王.bmp");
//Bitmap uiIcon = Bitmap.FromHbitmap((IntPtr)command.Bitmap);
uiIcon.Save(@"F:\Desktop\1.bmp");

效果:

c#winform学习(二)_第2张图片

左下角一个变成了透明的了,提取的是左上角第一个像素点的颜色来实现的!

--------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A3个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●ImageList 类

1. 提供管理Image对象集合的方法。无法继承此类。

2. ImageList 属性:

  • ColorDepth:获取图像列表的颜色深度。
  • Images:获取此图像列表的ImageList.ImageCollection。 数组
    • Add方法:
    • RemoveAt方法:
  • ImageSize:获取或设置图像列表中的图像大小。
  • ImageStream:获取与此图像列表关联的ImageListStreamer句柄。

--------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A4个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●Clipboard 类

1.提供将数据置于系统剪贴板中以及从中检索数据的方法。此类不能被继承。

2. Clipboard 方法(s):

  • Clear:从剪贴板中移除所有数据。
  • SetDataObject(Object):清除剪贴板然后,然后将非持久性数据置于其中。
  • SetDataObject(Object, Boolean):清除剪贴板并将数据置于系统剪贴板中,且指定在退出应用程序后是否将数据保留在剪贴板中。
  • GetDataObjec:检索当前位于系统剪贴板中的数据。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A5个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●IDataObject 接口

1.为传送数据提供与格式无关的机制。

2. IDataObject 方法:

  • GetData(String):检索指定格式的数据对象;数据格式由字符串指定。
  • GetData(Type):检索指定格式的数据对象;数据格式由Type对象指定。
  • GetDataPresent(Type):查看是否具有指定格式的数据,或者数据是否可以转换为指定格式。数据格式由Type对象指定。DataFormats类的字段。
             IDataObject d = Clipboard.GetDataObject();      //从剪贴板上获取对象
             if (d.GetDataPresent(DataFormats.Text))
             {
                 textBox1.Text = (string)d.GetData(DataFormats.Text);      //粘贴剪贴板上的文字
             }  
View Code - 打开、复制、黏贴

--------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A6个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●vScrollBar 类

1.表示标准的 Windows 垂直滚动条。

2. vScrollBar 属性:

  • Maximum:获取或设置可滚动范围的上限值。
  • Minimum:获取或设置可滚动范围的值的下限。
  • Value:获取或设置表示滚动框在滚动条控件中的当前位置的数值。返回int。

3. vScrollBar 事件:

  • Scroll:在通过鼠标或键盘操作移动滚动框后发生。点击上下三角块也会触发该事件。

通过下面的语句,可以实现:点击上面的三角块,Value增加,点击下面的三角块,Value减少,相对于在TextBox中的显示,参考:http://topic.csdn.net

textBox1.Text = (vScrollBar1.Maximum + vScrollBar1.Minimum - vScrollBar1.Value).ToString();

--------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A7个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●NumericUpDown 类

1.表示显示数值的 Windows 数字显示框(也称作 up-down 控件)。

2. NumericUpDown 属性:

  • Maximum:获取或设置数字显示框(也称作 up-down 控件)的最大值。
  • Minimum:获取或设置数字显示框(也称作 up-down 控件)的最小允许值。
  • Value:获取或设置赋给数字显示框(也称作 up-down 控件)的值。

3. NumericUpDown 事件:

  • ValueChanged:在以某种方式更改Value属性后发生。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A8个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●ToolTip 类

1.表示一个长方形的小弹出窗口,该窗口在用户将指针悬停在一个控件上时显示有关该控件用途的简短说明。

2. ToolTip 方法:

  • Hide:隐藏指定的工具提示窗口。
  • RemoveAll:移除当前与工具提示组件关联的所有工具提示文本。
  • Show:设置与工具提示关联的文本,然后显示该工具提示。(跟随鼠标)
  • GetToolTip:检索与指定控件关联的工具提示文本。
  • SetToolTip:使工具提示文本与指定的控件相关联。
            private void Form1_Load(object sender, EventArgs e)       //窗体加载时就写入
            {
                toolTip1.SetToolTip(this.button1, "点击确定!!");        //给button1设置提示
                toolTip1.ToolTipTitle = "提示:嗒嗒";                             //给提示设置标题
            }

3. ToolTip 属性:

  • ToolTipTitle:获取或设置工具提示窗口的标题。

  • IsBalloon:获取或设置一个指示工具提示是否应使用气球状窗口的值。
  • AutoPopDelay:获取或设置当指针在具有指定工具提示文本的控件内保持静止时,工具提示保持可见的时间期限。
  • InitialDelay:获取或设置工具提示显示之前经过的时间。(第一次提示时候管用)
  • ReshowDelay:获取或设置指针从一个控件移到另一控件时,必须经过多长时间才会出现后面的工具提示窗口。(从第二次开始开始管用了,这个时候InitialDelay就不管用了!)
  • ShowAlways:获取或设置一个值,该值指示是否显示工具提示窗口,甚至是在其父控件不活动的时候。
  • ToolTipIcon:获取或设置一个值,该值定义要在工具提示文本旁显示的图标的类型。(包括四个枚举值,Error、Info、None、Warning)
  • UseAnimation:获取或设置一个值,该值确定在显示工具提示时是否应使用动画效果。
  • UseFading:获取或设置一个值,该值确定在显示工具提示时是否应使用淡入淡出效果。

参考:百度分享

--------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第A9个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●SoundPlayer 类

1. 控制 .wav 文件中的声音播放。

2. SoundPlayer 属性:

  • SoundLocation:获取或设置要加载的 .wav 文件的文件路径或 URL。
  • Stream:获取或设置从中加载 .wav 文件的 Stream。

3. SoundPlayer 方法:

  • Play:使用新线程播放 .wav 文件,如果尚未加载 .wav 文件,则先加载该文件。
  • Stop:如果播放正在进行,则停止播放声音。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G1个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●ListView 类

c#winform学习(二)_第3张图片

1. 表示 Windows 列表视图控件,该控件显示可用四种不同视图之一显示的项集合。

2. ListView 属性:

  • CheckBoxes:获取或设置一个值,该值指示控件中各项的旁边是否显示复选框。
  • Columns:获取控件中显示的所有列标头的集合。
    • Add:增加一个列标头。
    • AddRange:
    • Clear:
    • Count:
                    listView1.Columns.Clear();
                    listView1.Columns.Add("Number", 80);
                    listView1.Columns.Add("Book", 80);
                    listView1.Columns.Add("Author", 80);
                    listView1.Columns.Add("Press", 80);
                    listView1.Columns.Add("Price", 80);
  • Items:获取包含控件中所有项的集合。
    • Add(ListViewItem lvi):增加一项。(ListViewItem)
    • AddRange(String[] strs):加入数组列!
                      ListViewItem lvi = new ListViewItem();
                      lvi.Text = "CCC";
                      lvi.SubItems.AddRange(new string[] {"A","B","C"});    //string数组
      //显示如下
      CCC     A       B       C
      //Text显示在第一列,接下来的分列在第二列、第三列、第四列!
      
    • Clear:可以清楚出了表头之外的一切!
    • Count:
    复制代码
                using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\Database2.mdf;Integrated Security=True;User Instance=True"))
                {
                    conn.Open();
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = str;
                        using (SqlDataReader reader = cmd.ExecuteReader())
                        {
                            while (reader.Read())
                            {
                                ListViewItem lvi = new ListViewItem();
                                lvi.Text = reader.GetString(0);
                                lvi.SubItems.AddRange(new string[]{reader.GetString(1),
                                    reader.GetString(2),
                                    reader.GetString(3),
                                    reader.GetString(4)});
                                listView1.Items.Add(lvi);
                            }
                        }
                    }
                }
    复制代码
  • Items[i].SubItems:每一行的集合。(Items[i]即为ListViewItem)
  • View: 获取或设置项在控件中的显示方式。 (枚举)默认为LargeIcon,修改为Details比较好!
    View 枚举:
    • LargeIcon:每个项都显示为一个最大化图标,在它的下面有一个标签。
    • Details:每个项显示在不同的行上,并带有关于列中所排列的各项的进一步信息。最左边的列包含一个小图标和标签,后面的列包含应用程序指定的子项。列显示一个标头,它可以显示列的标题。用户可以在运行时调整各列的大小。
    • SmallIcon:每个项都显示为一个小图标,在它的右边带一个标签。
    • List:每个项都显示为一个小图标,在它的右边带一个标签。各项排列在列中,没有列标头。
    • Tile:每个项都显示为一个完整大小的图标,在它的右边带项标签和子项信息。
  • SelectedItems:获取在控件中选定的项。 (集合)
    • Count:
    • 每个元素有Text属性
  • SelectedIndices:获取控件中选定项的索引。

3.ListView 方法:

  • Clear:清除ListView控件上面的所有东西!

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G2个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●ListViewItem 类

1.表示ListView控件中的项。

2. ListViewItem 属性:

  • SubItems:获取包含该项的所有子项的集合。
    • Add(String str):添加新项,第一个默认写在第二列,以此类推!
  • ImageIndex:获取或设置为该项显示的图像的索引。(获取ImageList的图像)
  • Text:获取或设置该项的文本。直接作为第一列的文本!

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G3个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●TreeView 类

c#winform学习(二)_第4张图片

1. 显示标记项的分层集合,每个标记项用一个TreeNode来表示。

2. TreeView 属性:

  • Nodes:获取分配给树视图控件的树节点集合。
    • Add:添加TreeNode节点。
    • Count:数组元素个数。
    • Nodes[0].Expand():展开Nodes[0]
    • Nodes[0].FirstNode.Expand():展开第一个Node。
    • Nodes[0].LastNode.Expand():展开最后一个Node。
    • BackColor:设置或获取背景色。
    • ForeColor:设置或获取前景色。
    • FullPath:节点的地址。
    • NodeFont:设置或获取节点字体。
    • NextNode:下一个同一级树节点。
    • NextVisibleNode:下一个节点。
    • Level:第一级为0,以此类推!
  • SelectedNode:获取或设置当前在树视图控件中选定的树节点。
  • ShowLines:获取或设置一个值,用以指示是否在树视图控件中的树节点之间绘制连线。
  • TopNode:获取树视图控件中第一个完全可见的树节点。
  • LineColor:获取或设置连接TreeView控件的节点的线条的颜色。
    复制代码
                TreeNode tn = new TreeNode("Alex");          //增加子节点
                TreeNode tn1 = new TreeNode("McDelfino");
                treeView1.Nodes.Add(tn);                   //添加节点,但是节点的Name不能重复,但String可以!
                treeView1.Nodes[2].Nodes.Add(tn1);
                
                for (int i = 0; i < 10;i++ )
                {
                    treeView1.Nodes.Add(new TreeNode("Alex"));
                }
                
                treeView1.ExpandAll();
    复制代码

3. TreeView 方法:

  • ExpandAll:展开所有树节点。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G4个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●TreeNode 类

1. 表示TreeView的节点。

2. TreeNode 构造函数:

  • TreeNode(String):用指定的标签文本初始化TreeNode类的新实例。
  • TreeNode(String, TreeNode[]):用指定的标签文本和子树节点初始化TreeNode类的新实例。

3. TreeNode 属性:

  • BackColor:获取或设置树节点的背景色。
  • FirstNode:获取树节点集合中的第一个子树节点。
  • Parent:获取当前树节点的父树节点。
            private void button2_Click(object sender, EventArgs e)
            {
                TreeNode tn = new TreeNode("Bug");            //增加兄弟节点。
                treeView1.SelectedNode.Parent.Nodes.Add(tn);
            }

4. TreeNode 方法:

  • Remove:从树视图控件中移除当前树节点。 (必须是没有子节点的,否则要先删除子节点)
    复制代码
            private void button3_Click(object sender, EventArgs e)
            {
                if (treeView1.SelectedNode.Nodes.Count == 0)                //先判断没有子节点
                {
                    if (MessageBox.Show("是否删除文件","警告",MessageBoxButtons.OKCancel) == DialogResult.OK)
     {
     treeView1.SelectedNode.Remove();
     }
                }
            }
    复制代码
  • Expand:展开树节点。
  • Collapse:折叠TreeNode

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G5个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●Keys 枚举

1. 此枚举有一个FlagsAttribute特性,通过该特性可使其成员值按位组合。

2. Keys 成员:

  • LButton:鼠标左按钮。
  • RButton:鼠标右按钮。
  • Cancel:Cancel 键。
  • MButton:鼠标中按钮(三个按钮的鼠标)。
  • XButton1:第一个 X 鼠标按钮(五个按钮的鼠标)。
  • XButton2:第二个 X 鼠标按钮(五个按钮的鼠标)。
  • Back:Backspace 键。
  • D0:0 键。
  • D1:1 键。
  • D2:2 键。
  • NumPad0:数字键盘上的 0 键。
  • NumPad1:数字键盘上的 1 键。
  • NumPad2:数字键盘上的 2 键。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G6个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●InputLanguage 类

1.提供方法和字段以管理输入语言。此类不能被继承。

2. InputLanguage 属性:

  • Culture:获取当前输入语言的区域性。
  • CurrentInputLanguage:获取或设置当前线程的输入语言。【静态】
  • DefaultInputLanguage:获取系统的默认输入语言。【静态】
  • InstalledInputLanguage:获取所有已安装输入语言的列表。【静态】

复制代码
        private void Form1_Load(object sender, System.EventArgs e)
        {//获取输入法信息
            //获取系统中已经安装的文字输入法
            InputLanguageCollection MyInputs = InputLanguage.InstalledInputLanguages;
            //将输入法的名称添加组合框中
            foreach (InputLanguage MyInput in MyInputs)
                this.comboBox1.Items.Add(MyInput.LayoutName);
            //获取当前输入法信息
            InputLanguage CurrentInput = InputLanguage.CurrentInputLanguage;
            this.textBox1.Text = CurrentInput.LayoutName;
            //获取输入法的语言区域
            this.textBox3.Text = CurrentInput.Culture.DisplayName;
            //获取默认的输入法信息
            InputLanguage DefaultInput = InputLanguage.DefaultInputLanguage;
            this.textBox2.Text = DefaultInput.LayoutName;
        }

        private void comboBox1_SelectedIndexChanged(object sender, System.EventArgs e)
        {//设置当前输入法
            //获取选择的输入法
            InputLanguage MyInput = InputLanguage.InstalledInputLanguages[this.comboBox1.SelectedIndex];
            //设置当前输入法
            InputLanguage.CurrentInputLanguage = MyInput;
            //获取当前输入法信息
            InputLanguage CurrentInput = InputLanguage.CurrentInputLanguage;
            this.textBox1.Text = CurrentInput.LayoutName;
            //获取输入法的语言区域
            this.textBox3.Text = CurrentInput.Culture.DisplayName;
            //获取默认的输入法信息
            InputLanguage DefaultInput = InputLanguage.DefaultInputLanguage;
            this.textBox2.Text = DefaultInput.LayoutName;
        }
复制代码

※ 参考:http://iamgyg.blog.163.com/blog/static/38223257201152323228166/
---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G7个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●ImeMode 枚举

1.指定一个值,该值是用来确定在选定了对象时该对象的输入法编辑器 (IME) 的状态。

2. ImeMode 成员:

  • On:IME 已打开。此值指示 IME 已打开,可以输入中文或日语特定的字符。此设置仅对日语、简体中文和繁体中文 IME 有效。
  • Off:IME 已关闭。此模式指示 IME 已关闭,这意味着该对象的行为方式与英语输入模式相同。此设置仅对日语、简体中文和繁体中文 IME 有效。

※ 参考:

  • http://only-copy.iteye.com/blog/1313766
  • http://blog.csdn.net/iluna/article/details/4903479

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G8个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●SendKeys 类

1. 提供将键击发送到应用程序的方法。

2. SendKeys 方法:

  • Send:向活动应用程序发送击键。 每个键都由一个或多个字符表示。
    • 若要指定单个键盘字符,请使用该字符本身。若要表示多个字符,请将各个附加字符追加到它之前的字符的后面。
                  SendKeys.Send("ACxS");  //大小写直接影响到输入的大小写
    • 加号 (+)、插入符号 (^)、百分号 (%)、波浪号 (~) 以及圆括号 ( ) 对SendKeys具有特殊含义。若要指定这些字符中的某个字符,请将其放在大括号 ({}) 内。
                  SendKeys.Send("{+}");  //表示+的输入
    • 若要指定在按键(如 Enter 或 Tab)时不显示的字符,以及表示操作而不表示字符的键,请使用下表中的代码:
      代码 代码
      Backspace {BACKSPACE}、{BS} 或 {BKSP} F1 {F1}
      Break {BREAK} F2 {F2}
      Caps Lock {CAPSLOCK} F3 {F3}
      Del 或 Delete {DELETE} 或 {DEL} F4 {F4}
      向下键 {DOWN} F5 {F5}
      End {END} F6 {F6}
      Enter {ENTER} 或 ~ F7 {F7}
      Esc {ESC} F8 {F8}
      Help {HELP} F9 {F9}
      Home {HOME} F10 {F10}
      Ins 或 Insert {INSERT} 或 {INS} F11 {F11}
      向左键 {LEFT} F12 {F12}
      Num Lock {NUMLOCK} F13 {F13}
      Page Down {PGDN} F14 {F14}
      Page Up {PGUP} F15 {F15}
      Print Screen {PRTSC} F16 {F16}
      向右键 {RIGHT} 数字键加号 {ADD}
      Scroll Lock {SCROLLLOCK} 数字键减号 {SUBTRACT}
      Tab {TAB} 数字键乘号 {MULTIPLY}
      向上键 {UP} 数字键除号 {DIVIDE}
    • 若要指定与 Shift、Ctrl 和 Alt 键的任意组合一起使用的键,请在这些键代码之前加上以下一段或多段代码。
      代码
      Shift +
      Ctrl ^
      Alt %
    • 若要指定在按一些键时应同时按住 Shift、Ctrl 和 Alt 键的任意组合,请将这些键的代码放在括号内。
                  SendKeys.Send("+(EC)");  //按 E 和 C 时同时按住 Shift 键
    • 若要指定重复键,请使用格式 {key number}。键和数字之间必须放一空格。
      若要指定在按一些键时应同时按住 Shift、Ctrl 和 Alt 键的任意组合,请将这些键的代码放在括号内。
                  SendKeys.Send("{LEFT 42}");  //按向左键42次
             SendKeys.Send("{h 2}");  //按h键2次

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第G9个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●Cursor 类

1. 代表用于绘制鼠标指针的图像。

2. Cursor 属性:

  • Clip:获取或设置表示光标的剪辑矩形的边界。 【静态】
  • Current:获取或设置代表鼠标光标的光标对象。 【静态】
  • Position:获取或设置光标位置。 【静态】(返回Point,相对于整个屏幕的Point,而不是相对于Form的)
    • X:横坐标
    • Y:纵坐标,在调出右键菜单的时候,这个值很有用!
        private void Form1_Click(object sender, EventArgs e
        {
            button6.Location = Point.Add(Cursor.Position,new Size(-Left,-Top));
        }

3. Cursor 方法:

  • Hide:隐藏光标。 【静态】
  • Show:显示光标。 【静态】

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U1个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●Screen 类

1.表示单个系统上的一个或多个显示设备。

2. Screen 属性:

  • AllScreens:获取系统上所有显示器的数组。【静态】返回Screen数组。
  • Bounds:获取显示的边界。
  • DeviceName:获取与显示关联的设备名称。
  • Primary:获取一个值,该值指示某个显示是否为主设备。
  • PrimaryScreen:获取主显示。
  • WorkingArea:获取显示器的工作区。工作区是显示器的桌面区域,不包括任务栏、停靠窗口和停靠工具栏。

3. Screen 方法:

  • GetBounds(Control):检索包含指定控件的最大部分的显示器的边界。
  • GetWorkingArea(Control):检索包含指定控件的最大区域的显示器工作区。工作区是显示器的桌面区域,不包括任务栏、停靠窗口和停靠工具栏。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U2个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●MessageBox 类

1.显示可包含文本、按钮和符号(通知并指示用户)的消息框。

2. MessageBox 方法:

  • Show(String):显示具有指定文本的消息框。返回值:DialogResult值之一。“确定”
    DialogResult枚举:
    • None、OK、Cancel、Abort、Retry、Ignore、Yes、No。
  • Show(String, String):显示具有指定文本和标题的消息框。返回值同上。
  • Show(String, String, MessageBoxButtons):显示具有指定文本、标题和按钮的消息框。
    MessageBoxButtons枚举:
    • OK、OKCancel、AbortRetryIgnore、YesNoCancel、YesNo、RetryCancel。
  • Show(String, String, MessageBoxButtons, MessageBoxIcon):显示具有指定文本、标题、按钮和图标的消息框。
    MessageBoxIcon枚举:
    • None、Hand、Question、Exclamation、Asterisk、Stop、Error、Warning、Information。
  • Show(String, String, MessageBoxButtons, MessageBoxIcon, MessageBoxDefaultButton):显示具有指定文本、标题、按钮、图标和默认按钮的消息框。
    MessageBoxDefaultButton枚举:
    • Button1、Button2、Button3。
  • Show(String, String, MessageBoxButtons, MessageBoxIcon, MessageBoxDefaultButton, MessageBoxOptions):显示具有指定文本、标题、按钮、图标、默认按钮和选项的消息框。
    MessageBoxOptions枚举:
    • ServiceNotification、DefaultDesktopOnly、RightAlign、RtlReading。
  • Show(String, String, MessageBoxButtons, MessageBoxIcon, MessageBoxDefaultButton, MessageBoxOptions, Boolean):显示一个具有指定文本、标题、按钮、图标、默认按钮、选项和“帮助”按钮的消息框。
  • Show(String, String, MessageBoxButtons, MessageBoxIcon, MessageBoxDefaultButton, MessageBoxOptions, String):使用指定的帮助文件显示一个具有指定文本、标题、按钮、图标、默认按钮、选项和“帮助”按钮的消息框。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U3个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●DataGridView 类

1.在可自定义的网格中显示数据。

            int columnIndex = dataGridView1.CurrentCell.ColumnIndex;
            int rowIndex = dataGridView1.CurrentCell.RowIndex;
            dataGridView1.CurrentCell = dataGridView1[columnIndex - 1, rowIndex  - 1];                 // 实例[列数, 行数] 可以提取每个cell的值!

2. DataGridView 属性:

  • AllowUserToAddRows:获取或设置一个值,该值指示是否向用户显示添加行的选项。
  • AllowUserToDeleteRows:获取或设置一个值,该值指示是否允许用户从DataGridView中删除行。
  • AllowUserToOrderColumns:获取或设置一个值,该值指示是否允许通过手动对列重新定位。【是否可以左右拖拽】
  • AutoSizeColumnsMode:获取或设置一个值,该值指示如何确定列宽。
    DataGridViewAutoSizeColumnsMode枚举
    • AllCells:列宽调整到适合列中所有单元格(包括标头单元格)的内容。
    • AllCellsExceptHeader:列宽调整到适合列中除标头单元格以外所有单元格的内容。
    • DisplayedCells:列宽调整到适合位于屏幕上当前显示的行中的列的所有单元格(包括标头单元格)的内容。
    • DisplayedCellsExceptHeader:列宽调整到适合位于屏幕上当前显示的行中的列的所有单元格(不包括标头单元格)的内容。
    • None:列宽不会自动调整。
    • ColumnHeader:列宽调整到适合列标头单元格的内容。
    • Fill:列宽调整到使所有列宽精确填充控件的显示区域,要求使用水平滚动的目的只是保持列宽大于 DataGridViewColumn.MinimumWidth 属性值。相对列宽由相对 DataGridViewColumn.FillWeight 属性值决定。
  • AutoSizeRowsMode:获取或设置一个值,该值指示如何确定行高。
    DataGridViewAutoSizeRowsMode枚举
  • AllowUserToResizeColumns:获取或设置一个值,该值指示用户是否可以调整列的大小。
  • AllowUserToResizeRows:获取或设置一个值,该值指示用户是否可以调整行的大小。
  • BackColor:获取或设置控件的背景色。
  • BackgroundColor:获取或设置DataGridView的背景色。
  • ClientSize:获取或设置控件的工作区的高度和宽度。
  • ColumnCount:获取或设置DataGridView中显示的列数。
  • ColumnHeadersBorderStyle:获取应用于列标题的边框样式。
    • Custom:
    • Single:
    • Raised:
    • Sucken:
    • None:
  • ColumnHeadersDefaultCellStyle:获取或设置默认列标题样式。
    DataGridViewCellStyle 类:表示应用到DataGridView控件中的各个单元格的格式设置和样式信息。
  • ColumnHeadersHeight:获取或设置列标题行的高度(以像素为单位)
  • ColumnHeadersHeightSizeMode:获取或设置一个值,该值指示是否可以调整列标题的高度,以及它是由用户调整还是根据标题的内容自动调整。
    • EnableResizing:
    • DisableResizing:
    • AutoSize:
  • ColumnHeadersVisible:获取或设置一个值,该值指示是否显示列标题行。
  • Columns:获取一个包含控件中所有列的集合。
    DataGridViewColumnCollection 类:表示DataGridView控件中的DataGridViewColumn对象的集合。
    • Remove:从集合中移除列。
    • RemoveAt:从集合中移除给定索引处的列。
      ' 删除名为"Column1"的列
      DataGridView1.Columns.Remove("Column1");
      ' 删除第一列
      DataGridView1.Columns.RemoveAt(0);
      ' 删除第一行
      DataGridView1.Rows.RemoveAt(0);

    DataGridViewColumn 类:表示DataGridView控件中的列。

    • Visible:获取或设置一个值,指示该列是否可见。
    • Resizable:获取或设置一个值,指示该列的大小是否可调。
    • Selected:获取或设置一个值,该值指示带区是否为被选定。
    • ReadOnly:获取或设置一个值,指示用户是否可以编辑列的单元格。
        dataGridView1.Columns[1].ReadOnly = true;          //第二列只读
    • Width:获取或设置列的当前宽度。
    • MiniWidth:获取或设置列的最小宽度。
    • Frozen:获取或设置一个指示列是否已被冻结的值。【指示列左侧之间可以互相拖拽,但是不能往有拖拽】
    • HeaderCell:获取或设置表示列标题的DataGridViewColumnHeaderCell。
    • HeaderText:获取或设置列标题单元格的标题文本。
  • CurrentCell:获取或设置当前处于活动状态的单元格。
    DataGridViewCell 类:表示DataGridView控件中的单个单元格。
    • Value:获取或设置与此单元格关联的值。
    • ColumnIndex:获取此单元格的列索引。
    • RowIndex:
    • ReadOnly:获取或设置一个值,该值表示是否可以编辑该单元格的数据。
  • CurrentCellAddress:获取当前处于活动状态的单元格的行索引和列索引。 【返回 Point】
  • CurrentRow:获取包含当前单元格的行。
    DataGridViewRow 类:表示DataGridView控件中的行。
    • Cells:获取用于填充行的单元格集合。
      DataGridViewCellCollection 类:表示DataGridViewRow中单元格的集合。
      • Item:获取或设置给定位置处的项。通过 实例[列名 or index] 来实现!
        for (int i = 0; i < selectedRows.Count;i++ )
        {
            DataGridViewRow row = selectedRows[i];
            strOID = row.Cells[2].Value.ToString();  //用索引 index
            OIDList.Add(strOID);
        }
        for (int i = 0; i < selectedRows.Count;i++ )
        {
            DataGridViewRow row = selectedRows[i];
            strOID = row.Cells["CITY_NAME"].Value.ToString();  //用列名称
            OIDList.Add(strOID);
        }

      • Count:获取集合中元素的总数。
      • IsReadOnly:获取一个值,该值指示集合是否为只读。

    • Visible:隐藏。
    • Visible:获取或设置一个值,指示该列是否可见。
    • Resizable:获取或设置一个值,指示该列的大小是否可调。
    • Selected:获取或设置一个值,该值指示带区是否为被选定。
    • ReadOnly:获取或设置一个值,指示用户是否可以编辑列的单元格。
                  dataGridView1.Rows[1].ReadOnly = true;          //第二行只读
    • Height:获取或设置行的当前高度。
    • MinimumHeight:获取或设置行的最小高度。
    • Frozen:获取或设置一个指示行是否已被冻结的值。
  • DataSource:获取或设置DataGridView所显示数据的数据源。  
    清空数据的方法:
    dataGridView1.DataSource = null;

    导入数据的方法:

    复制代码
    //导入数据
                DataTable table = new DataTable();  //首先创建表格
                DataColumn columnID = new DataColumn("ID");  //创建列 ID
                DataColumn columnName = new DataColumn("Name");  //创建列 Name
    
                table.Columns.Add(columnID);  //增加列 ID
                table.Columns.Add(columnName);  //增加列 Name
                for (int i = 1; i < 10; i++)
                {
                    DataRow row = table.NewRow();  //新建行
                    row[0] = i.ToString();        //为该行中的第一列添加值
                    row[1] = "中国" + i.ToString();    //为该行中的第二列添加值
                    table.Rows.Add(row);        //将该行添加到
                }
                dataGridView1.DataSource = table;    //将表加到框架中
                dataGridView1.Columns[0].Width = 40;  //定义列宽
                dataGridView1.ClearSelection();      //清空选择
                dataGridView1.Rows[1].Selected = true;  //选择第二行
    复制代码
  • DefaultCellStyle:在未设置其他单元格样式属性的情况下,获取或设置应用于DataGridView中的单元格的默认单元格样式。
  • EditMode:获取或设置一个值,该值指示如何开始编辑单元格。
    • EditOnEnter:当单元格接收到焦点时即可开始编辑。在按 Tab 键在行中横向输入值,或按 Enter 键在列中纵向输入值时,此模式非常有用。
    • EditOnKeystroke:当单元格获得焦点时按任意字母数字键开始编辑。
    • EditOnKeystrokeOrF2:当单元格获得焦点时按任意字母数字键或 F2 开始编辑。
    • EditOnF2:当单元格获得焦点时按 F2 开始编辑。此模式将选择点放置在单元格内容的末尾。
    • EditProgrammatically:仅在调用BeginEdit方法时开始编辑。
  • RowCount:获取或设置DataGridView中显示的行数。
  • RowHeadersBorderStyle:
  • RowHeadersDefaultCellStyle:
  • RowHeadersVisible:是否显示行头~默认为 true!
  • RowHeadersWidth:
  • RowHeadersWidthSizeMode:
  • Rows:
    DataGridViewRowCollection 类:DataGridViewRow对象的集合。
    • Remove:从集合中移除行。
    • RemoveAt:从集合中移除指定位置处的行。
                  foreach (DataGridViewRow r in dataGridView1.SelectedRows)
                  {
                      if (!r.IsNewRow)
                      {
                          dataGridView1.Rows.Remove(r);
                      }
                  }
  • ReadOnly:获取或设置一个值,该值表示是否可以编辑该单元格的数据。
  • ScrollBars:获取或设置要在DataGridView控件中显示的滚动条的类型。
  • SelectedCells:获取用户选定的单元格的集合。
  • SelectedColumns:获取用户选定的列的集合。
  • SelectedRows:获取用户选定的行的集合。
    DataGridViewSelectedRowCollection 类:表示在DataGridView中选定的DataGridViewRow对象的集合。
    • Item:获取指定索引处的行。就是 实例[i] 的效果。
    • Count:获取集合中元素的总数。选择了几行!
      删除选择的行
      DataGridViewSelectedRowCollection selectRows = dataGridView1.SelectedRows;
      for (int i = 0; i < selectRows.Count;i++ )
      {
          DataGridViewRow row = selectRows[i];
          dataGridView1.Rows.Remove(row);
      }
  • SelectionMode:获取或设置一个值,该值指示如何选择DataGridView的单元格。
    • CellSelect:可以选定一个或多个单元格。
    • FullRowSelect:通过单击行的标头或是该行所包含的单元格选定整个行。
    • FullColumnSelect:通过单击列的标头或该列所包含的单元格选定整个列。
    • RowHeadersSelect:通过单击行的标头单元格选定此行。通过单击某个单元格可以单独选定此单元格。
    • ColumnHeadersSelect:可以通过单击列的标头单元格选定此列。通过单击某个单元格可以单独选定此单元格。
  • ShowCellToolTips:获取或设置一个值,该值指示当鼠标指针停留在单元格上时,是否显示工具提示。
  • SortedColumn:获取DataGridView内容的当前排序所依据的列。
  • SortOrder:获取一个值,该值指示是按升序或降序对DataGridView控件中的项进行排序,还是不排序。
    • None:项未排序。
    • Ascending:项按递增顺序排序。
    • Descending:项按递减顺序排序。
  • StandardTab:获取或设置一个值,该值指示按 Tab 键是否会将焦点按 Tab 键顺序移到下一个控件,而不是将焦点移到控件中的下一个单元格。
  • TopLeftHeaderCell:获取或设置位于DataGridView控件左上角的标题单元格。

3. DataGridView 方法:

  • BeginEdit:将当前的单元格置于编辑模式下。
  • CancelEdit:取消当前选定单元格的编辑模式并丢弃所有更改。
  • ClearSelection:取消对当前选定的单元格的选择。
  • CreateColumnsInstance:创建并返回一个新的DataGridViewColumnCollection。
  • EndEdit:提交对当前单元格进行的编辑并结束编辑操作。
  • GetCellCount:获取满足所提供筛选器的单元格的数目。

4. DataGridView 事件:

  • CellMouseDown:当鼠标指针位于单元格的边界内时,在用户按鼠标按钮时发生。
    (object sender, DataGridViewCellMouseEventArgs e)
    • e.ColumnIndex:鼠标点击处的列索引!
    • e.RowIndex:鼠标点击处的行索引!
  • CellMouseMove:
  • CellMouseUp:
  • UserAddedRow:在用户完成向DataGridView控件中添加行时发生。
  • UserDeletedRow:在用户完成从DataGridView控件中删除行时发生。
  • UserDeletingRow:在用户从DataGridView控件中删除行时发生。
                if (MessageBox.Show("Sure?", "Warning", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) == DialogResult.Cancel)
                {
                    e.Cancel = true;         //选择取消,则不删除
                }
  • SelectionChanged:在当前选择出现更改时发生。

※http://www.cnblogs.com/peterzb/archive/2009/05/29/1491891.html

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U4个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●ContextMenuStrip 类

1.表示快捷菜单。

2. ContextMenuStrip 构造函数:

  • ContextMenuStrip
  • ContextMenuStrip(IContainer):

3.ContextMenuStrip属性:

  • Items:获取属于ToolStrip的所有项。返回值:ToolStripItemCollection 类!

4.ContextMenuStrip方法:

  • Show(Point):相对于指定的屏幕位置定位ToolStripDropDown。(结合 Cursor 类来使用)
  • Show(Point, ToolStripDropDownDirection):相对于指定的控件位置并以相对于父控件的指定方向定位ToolStripDropDown。
  • Show(Int32, Int32):相对于指定的屏幕坐标定位ToolStripDropDown。
  • Show(Control, Point):相对于指定的控件位置定位ToolStripDropDown。
  • Show(Control, Point, ToolStripDropDownDirection):相对于指定位置的指定控件并以相对于父控件的指定方向定位ToolStripDropDown。

5.ContextMenuStrip事件:

  • ItemClicked:在单击ToolStripItem时发生。
    • e.ClickedItem:返回点击的 ToolStripItem。

---------------------------------------------------------------------------------------------------------------

●·●ToolStripItemCollection 类

1.表示ToolStripItem对象的集合。

2. ToolStripItemCollection 属性:

  • Count:获取集合中的元素数。
  • Item:获取指定索引处的项。

3. ToolStripItemCollection 方法:

  • Add:将ToolStripItem添加到集合。
  • AddRange:将ToolStripItem控件添加到集合。数组形式!
  • Clear:从集合中移除所有项。
  • Contains:确定指定项是否为集合的成员。
  • Remove:从集合中移除指定的项。
  • RemoveAt:从集合中的指定索引处移除项。

---------------------------------------------------------------------------------------------------------------

●·●ToolStripItem 类

1.表示对ToolStrip或ToolStripDropDown可以包含的所有元素的事件和布局进行管理的抽象基类。

---------------------------------------------------------------------------------------------------------------

●·●ToolStripMenuItem 类

1.表示MenuStrip或ContextMenuStrip上显示的可选选项。虽然ToolStripMenuItem对以前版本的MenuItem控件的功能进行了替换和添加,但考虑到向后兼容性和将来的使用(如果选择),仍然保留了MenuItem。(继承自:ToolStripItem 类)

2. ToolStripMenuItem 属性:

  • Checked:获取或设置一个值,该值指示是否选中ToolStripMenuItem。
  • CheckOnClick:获取或设置一个值,该值指示ToolStripMenuItem是否应在被单击时自动显示为选中或未选中。
  • CheckState:获取或设置一个值,该值指示ToolStripMenuItem处于选中、未选中还是不确定状态。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U5个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●Application 类

1.提供static方法和属性以管理应用程序,例如启动和停止应用程序、处理 Windows 消息的方法和获取应用程序信息的属性。此类不能被继承。

2. Application 属性:

  • ExecutablePath:获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
  • StartupPath:获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。(bin/Debug)
  • UserAppDataPath:获取用户的应用程序数据的路径。

3. Application 方法:

  • Exit:通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。
  • Restart:关闭应用程序并立即启动一个新实例。
  • Run(Form):在当前线程上开始运行标准应用程序消息循环,并使指定窗体可见。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U6个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●Help 类

1.封装 HTML 帮助 1.0 引擎。

2. Help 方法:

  • ShowHelp:显示帮助文件的内容。(parentcontrol 用 this 即可!文件格式用 chm 文件!)
  • ShowPopup:显示一个“帮助”弹出窗口。

制作 chm 文件推荐软件:http://www.yyebook.com/

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U7个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●SystemInformation 类

1.提供当前系统环境的有关信息。包括很多边缘控件的信息!

2. SystemInformation 属性:

  • FrameBorderSize:获取在正拖动调整大小的窗口周围绘制的大小调整边框的粗细(以像素为单位)。其获取的 Width 指的是一面边框的宽度,左右一样,获取的 Height 指的是下边框的高度,但是我们更需要的是上边框的高度,目前可以通过下面的方法获得!
    this.Height - this.ClientRectangle.Height - SystemInformation.FrameBorderSize.Height
  • Border3DSize:获取三维 (3-D) 样式窗口或系统控件边框的粗细(以像素为单位)。

※ 参考:http://blog.sina.com.cn/s/blog_70eaf2a30100o30y.html

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U8个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●PropertyGrid 类

1.提供用于浏览对象属性的用户界面。

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第U9个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●Webbrowser 类

1.使用户可以在窗体内导航网页。

2. Webbrowser 方法:

  • Navigate(String):将指定位置的文档加载到WebBrowser控件中。
    • (Uri)
    • (String, Boolean):将指定的统一资源定位符 (URL) 处的文档加载到浏览器新窗口或WebBrowser控件中。(true,新窗口)
  • GoBack:如果导航历史记录中的上一页可用,则将WebBrowser控件导航到该页。
  • GoForward:如果导航历史记录中的下一页可用,则将WebBrowser控件导航到该页。
  • GoHome:将WebBrowser控件导航到当前用户的主页。
  • GoSearch:将WebBrowser控件导航到当前用户的默认搜索页。
  • Print:使用当前打印和页面设置打印当前显示在WebBrowser控件中的文档。
  • Refresh:
  • Stop:取消所有挂起的导航并停止所有动态页元素(如背景声音和动画)。

3. Webbrowser 属性:

  • Url:获取或设置当前文档的 URL。
    • 类型 -System.Uri:提供统一资源标识符 (URI) 的对象表示形式和对 URI 各部分的轻松访问。
    • 构造函数 - Uri(String):用指定 URI 初始化Uri类的新实例。
  • CanGoBack:获取一个值,该值指示导航历史记录中的上一页是否可用,如果可用,GoBack方法才能成功。
  • CanGoForward:获取一个值,该值指示导航历史记录中的下一页是否可用,如果可用,GoForward方法才能成功。
  • Document:获取一个HtmlDocument,它表示当前显示在WebBrowser控件中的网页。
    • 类型 -System.Windows.Forms.HtmlDocument:提供对WebBrowser控件承载的 HTML 文档的顶级编程访问。
  • DocumentStream:获取或设置一个流,该流包含显示在WebBrowser控件中的网页的内容。
    • 类型 -System.IO.Stream:提供字节序列的一般视图。
  • DocumentText:获取或设置显示在WebBrowser控件中的页的 HTML 内容。(String)
  • DocumentTitle:获取当前显示在WebBrowser控件中的文档的标题。
  • DocumentType:获取当前显示在WebBrowser控件中的文档的类型。
  • Focused:获取一个值,该值指示控件或其任一子窗口是否具有输入焦点。
  • IsBusy:获取一个值,该值指示WebBrowser控件当前是否正在加载新文档。
  • IsOffline:获取一个值,该值指示WebBrowser控件是否处于脱机模式。
  • IsWebBrowserContextMenuEnabled:获取或设置一个值,该值指示WebBrowser控件是否启用了快捷菜单。
  • StatusText:获取WebBrowser控件的状态文本。
  • Version:获取所安装的 Internet Explorer 的版本。
  • WebBrowserShortcutsEnabled:获取或设置一个值,该值指示WebBrowser控件中是否启用了键盘快捷键。

4. Webbrowser 事件:

---------------------------------------------------------------------------------------------------------------

╔════════╗
╠════╣第Ua个 ╠══════════════════════════════════════════════════╣
╚════════╝

●·●HtmlDocument 类

1.提供对WebBrowser控件承载的 HTML 文档的顶级编程访问。

2. HtmlDocument 方法:

  • CreateElement:新建一个指定 HTML 标记类型的HtmlElement
  • Focus:在当前文档上设置用户输入焦点。
  • GetElementById:将元素的ID特性用作搜索键来检索单个HtmlElement。
  • GetElementFromPoint:检索位于指定工作区坐标位置的 HTML 元素。

3. HtmlDocument 属性:

  • BackColor:获取或设置 HTML 文档的背景色。
  • Body:获取BODY标记的HtmlElement。
  • Forms:获取文档中所有
    元素的集合。
  • Images:获取文档中所有图像标记的集合。
  • ActiveLinkColor:获取或设置超链接被用户单击后的Color。
  • LinkColor:获取或设置超链接的颜色。
  • Links:获取此 HTML 文档中所有超链接的列表。
  • RightToLeft:获取或设置当前文档中文本的方向。
  • Title:获取或设置当前 HTML 文档中</span>标记的文本值。</span><br></span></li> <li><span class="sentence">Url:<span class="sentence">获取描述此文档位置的 URL。</span><br></span></li> <li><span class="sentence">VisitedLinkColor:<span class="sentence">获取或设置用户已经访问的链接(指向 HTML 页)的颜色。</span><br></span></li> <li><span class="sentence">Window:<span class="sentence">获取与此文档关联的HtmlWindow。</span><br></span></li> </ul> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> </p> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <span class="sentence">---------------------------------------------------------------------------------------------------------------</span></p> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> ╔════════╗<br> ╠════╣第Ub个 ╠══════════════════════════════════════════════════╣<br> ╚════════╝</p> <h1 style="font-size:1.5em;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;"> <span style="color:rgb(51,204,0);">●·●<span style="text-decoration:underline;"><span style="color:rgb(51,204,0);">HtmlElement 类</span></span>:</span> </h1> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> 1.<span class="sentence">表示网页内的一个 HTML 元素。</span></p> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <span class="sentence">2. HtmlElement 方法:<br></span></p> <ul style="margin-left:45px;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <li><span class="sentence"><span class="sentence"><span class="sentence"><span class="sentence"><span class="sentence">GetAttribute:<span class="sentence">检索元素中已命名特性的值。</span></span></span></span></span></span></li> <li><span class="sentence">SetAttribute:<span class="sentence">设置元素中已命名特性的值。</span><br></span></li> </ul> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <span class="sentence">3. HtmlElement 属性:<br></span></p> <ul style="margin-left:45px;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <li><span class="sentence">InnerHtml:<span class="sentence">获取或设置此元素下的 HTML 标记。(String)提取代码!</span><br></span></li> <li><span class="sentence"><span class="sentence"><span class="sentence"><span class="sentence"><span class="sentence">InnerText:<span class="sentence">获取或设置分配给此元素的文本。(String)提取文本!</span></span></span></span></span></span></li> <li><span class="sentence">OuterHtml:<span class="sentence">获取或设置当前元素的 HTML 代码。</span><br></span></li> <li><span class="sentence">OuterText:<span class="sentence">获取或设置当前元素的文本。</span><br></span></li> <li><span class="sentence">HtmlDocument:<span class="sentence">获取此元素所属的HtmlDocument。</span><br></span></li> <li><span class="sentence">Children:<span class="sentence">获取当前元素的所有子级的HtmlElementCollection。</span><br></span></li> <li><span class="sentence">Id:<span class="sentence">获取或设置用于标识此元素的标签。</span><br></span></li> <li><span class="sentence">Name:<span class="sentence">获取或设置元素的名称。</span><br></span></li> <li><span class="sentence">NextSibling:<span class="sentence">获取文档树中与此元素位于同一级别的下一个元素。</span><br></span></li> <li><span class="sentence">Style:<span class="sentence">获取或设置当前元素的以逗号分隔的样式列表。</span><br></span></li> </ul> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <span class="sentence">---------------------------------------------------------------------------------------------------------------</span></p> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> ╔════════╗<br> ╠════╣第Uc个 ╠══════════════════════════════════════════════════╣<br> ╚════════╝</p> <h1 style="font-size:1.5em;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;"> <span style="color:rgb(51,204,0);">●·●<span style="text-decoration:underline;"><span style="color:rgb(51,204,0);">NotifyIcon 类</span></span>:</span> </h1> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> 1.<span class="sentence">指定在通知区域中创建图标的组件。无法继承此类。</span></p> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <span class="sentence">2. NotifyIcon 方法:<br></span></p> <ul style="margin-left:45px;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <li><span class="sentence">ShowBalloonTip:在任务栏中显示气球提示。</span></li> </ul> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <span class="sentence">3. NotifyIcon 属性:<br></span></p> <ul style="margin-left:45px;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <li><span class="sentence">BalloonTipIcon:获取或设置要显示在与NotifyIcon关联的气球提示上的图标。</span></li> <li><span class="sentence">BalloonTipText:获取或设置要显示在与<strong>NotifyIcon</strong>关联的气球提示上的文本。<br></span></li> <li><span class="sentence">BalloonTipTitle:获取或设置显示在<strong>NotifyIcon</strong>上的气球提示的标题。<br></span></li> <li><span class="sentence">ContextMenu:获取或设置图标的快捷菜单。<br></span></li> <li><span class="sentence">ContextMenuStrip:获取或设置与<strong>NotifyIcon</strong>关联的快捷菜单。<br></span></li> <li><span class="sentence">Icon:获取或设置当前图标。<br></span></li> <li><span class="sentence">Text:获取或设置当鼠标指针停留在通知区域图标上时显示的工具提示文本。<br></span></li> <li><span class="sentence">Visible:获取或设置一个值,指示图标在任务栏的通知区域中是否可见。<br></span></li> </ul> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <span class="sentence">4. NotifyIcon 事件:<br></span></p> <ul style="margin-left:45px;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <li>Click:当用户单击通知区域中的图标时发生。</li> <li>DoubleClick:当用户双击任务栏的通知区域中的图标时发生。</li> <li>MouseClick:当用户使用鼠标单击NotifyIcon时发生。</li> <li>MouseDoubleClick:当用户使用鼠标双击<strong>NotifyIcon</strong>时发生。</li> <li>MouseDown:当指针位于任务栏的通知区域中的图标上方时,若用户按鼠标按钮就会发生。</li> <li>MouseMove:当指针位于任务栏的通知区域中的图标上方时,若用户移动鼠标就会发生。</li> <li>MouseUp:当指针位于任务栏的通知区域中的图标上方时,若用户释放鼠标按钮就会发生。</li> </ul> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> <span class="sentence">※ 参考:<span class="link_title">NotifyICon使用</span><br></span></p> <p style="line-height:1.5;font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;font-size:14px;"> </p> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1288439134096007168"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(c#winform学习(二))</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1950233199242178560.htm" title="x86-64汇编语言训练程序与实战" target="_blank">x86-64汇编语言训练程序与实战</a> <span class="text-muted">十除以十等于一</span> <div>本文还有配套的精品资源,点击获取简介:汇编语言是一种低级语言,与机器代码紧密相关,特别适用于编写系统级代码及性能要求高的应用。nasm编译器是针对x86和x86-64架构的汇编语言编译器,支持多种语法风格和指令集。项目Euler提供数学和计算机科学问题,鼓励编程技巧应用,前100个问题的答案可共享。x86-64架构扩展了寄存器数量并引入新指令,提升了数据处理效率。学习汇编语言能够深入理解计算机底层</div> </li> <li><a href="/article/1950233072825856000.htm" title="三菱PLC全套学习资料及应用手册" target="_blank">三菱PLC全套学习资料及应用手册</a> <span class="text-muted">good2know</span> <div>本文还有配套的精品资源,点击获取简介:三菱PLC作为工业自动化领域的核心设备,其系列产品的学习和应用需要全面深入的知识。本次资料包为学习者提供从基础到进阶的全方位学习资源,包括各种型号PLC的操作手册、编程指南、软件操作教程以及实际案例分析,旨在帮助用户系统掌握PLC的编程语言、指令系统及在各类工业应用中的实施。1.三菱PLC基础知识入门1.1PLC的基本概念可编程逻辑控制器(PLC)是工业自动化</div> </li> <li><a href="/article/1950233040592629760.htm" title="2022-10-20" target="_blank">2022-10-20</a> <span class="text-muted">体力劳动者</span> <div>不因感觉稍纵即逝就不加记录。在女儿睡觉后我记下今天的小故事。接手新班级后,今天是第二次收到家长的感谢信(微信)。是我表扬次数最多的两位学生家长致来的感谢,他们明显感受到孩子自信、阳光了不少,写作业由被动变为了主动,家庭氛围也由鸡飞狗跳变成了其乐融融。在被顽皮的学生气得头晕之后,我感到了久违的价值感,责任感甚至使命感,我回复家长这样一句话:我们也需要家长的反馈好让我们的教育工作更有劲头。我也认识到,</div> </li> <li><a href="/article/1950232820773351424.htm" title="移动端城市区县二级联动选择功能实现包" target="_blank">移动端城市区县二级联动选择功能实现包</a> <span class="text-muted">good2know</span> <div>本文还有配套的精品资源,点击获取简介:本项目是一套为移动端设计的jQuery实现方案,用于简化用户在选择城市和区县时的流程。它包括所有必需文件:HTML、JavaScript、CSS及图片资源。通过动态更新下拉菜单选项,实现城市到区县的联动效果,支持数据异步加载。开发者可以轻松集成此功能到移动网站或应用,并可基于需求进行扩展和优化。1.jQuery移动端解决方案概述jQuery技术简介jQuery</div> </li> <li><a href="/article/1950232782412247040.htm" title="日更006 终极训练营day3" target="_blank">日更006 终极训练营day3</a> <span class="text-muted">懒cici</span> <div>人生创业课(2)今天的主题:学习方法一:遇到有用的书,反复读,然后结合自身实际,列践行清单,不要再写读书笔记思考这本书与我有什么关系,我在哪些地方能用到,之后我该怎么用方法二:读完书没映像怎么办?训练你的大脑,方法:每读完一遍书,立马合上书,做一场分享,几分钟都行对自己的学习要求太低,要逼自己方法三:学习深度不够怎么办?找到细分领域的榜样,把他们的文章、书籍、产品都体验一遍,成为他们的超级用户,向</div> </li> <li><a href="/article/1950232316974526464.htm" title="(二)SAP Group Reporting (GR) 核心子模块功能及数据流向架构解析" target="_blank">(二)SAP Group Reporting (GR) 核心子模块功能及数据流向架构解析</a> <span class="text-muted"></span> <div>数据如何从子公司流转到合并报表的全过程,即数据采集→合并引擎→报表输出,特别是HANA内存计算如何优化传统ETL瓶颈。SAPGroupReporting(GR)核心模块功能及数据流向的架构解析,涵盖核心组件、数据处理流程和关键集成点,适用于S/4HANA1809+版本:一、核心功能模块概览模块功能关键事务码/FioriApp数据采集(DataCollection)整合子公司财务数据(SAP/非SA</div> </li> <li><a href="/article/1950232190038110208.htm" title="day15|前端框架学习和算法" target="_blank">day15|前端框架学习和算法</a> <span class="text-muted">universe_01</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a> <div>T22括号生成先把所有情况都画出来,然后(在满足什么情况下)把不符合条件的删除。T78子集要画树状图,把思路清晰。可以用暴力法、回溯法和DFS做这个题DFS深度搜索:每个边都走完,再回溯应用:二叉树搜索,图搜索回溯算法=DFS+剪枝T200岛屿数量(非常经典BFS宽度把树状转化成队列形式,lambda匿名函数“一次性的小函数,没有名字”setup语法糖:让代码更简洁好写的语法ref创建:基本类型的</div> </li> <li><a href="/article/1950231381485350912.htm" title="《极简思维》第三部分" target="_blank">《极简思维》第三部分</a> <span class="text-muted">小洋苏兮</span> <div>整理你的人际关系如何改善人际关系?摘录:因为人际关系问题是人们生活中不快乐的主要原因。感想:感觉这个说的挺对,之前我总是埋头学习,不管舍友不管自己的合作伙伴的一些事情,但实际上,这学期关注了之后好多了摘录:“亲密关系与社交会让你健康而快乐。这是基础。太过于关注成就或不太关心人际关系的人都不怎么快乐。基本上来说,人类就是建立在人脉关系上的。”感想:但是如果有时想的太多就不太好,要以一个开放的心态跟别</div> </li> <li><a href="/article/1950230873060208640.htm" title="你要记住,最重要的是:随时做好准备,为了你可能成为更好的自己,放弃现在的自己。" target="_blank">你要记住,最重要的是:随时做好准备,为了你可能成为更好的自己,放弃现在的自己。</a> <span class="text-muted">霖霖z</span> <div>打卡人:周云日期:2018年11月09日【日精进打卡第180天】【知~学习】《六项精进》0遍共214遍《通篇》1遍共106遍《大学》2遍共347遍《坚强工作,温柔生活》ok《不抱怨的世界》104-108页《经典名句》你要记住,最重要的是:随时做好准备,为了你可能成为更好的自己,放弃现在的自己。【行~实践】一、修身:(对自己个人)1、坚持打卡二、齐家:(对家庭和家人)打扫卫生,接送孩子,洗衣做饭,陪</div> </li> <li><a href="/article/1950230804957294592.htm" title="SpringMVC执行流程(原理),通俗易懂" target="_blank">SpringMVC执行流程(原理),通俗易懂</a> <span class="text-muted">国服冰</span> <a class="tag" taget="_blank" href="/search/SpringMVC/1.htm">SpringMVC</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/mvc/1.htm">mvc</a> <div>SpringMVC执行流程(原理),通俗易懂一、图解SpringMVC流程二、进一步理解Springmvc的执行流程1、导入依赖2、建立展示的视图3、web.xml4、spring配置文件springmvc-servlet5、Controller6、tomcat配置7、访问的url8、视图页面一、图解SpringMVC流程图为SpringMVC的一个较完整的流程图,实线表示SpringMVC框架提</div> </li> <li><a href="/article/1950229986984128512.htm" title="贫穷家庭的孩子考上985以后会怎样?" target="_blank">贫穷家庭的孩子考上985以后会怎样?</a> <span class="text-muted">Mellisa蜜思言</span> <div>我出生在一个贫穷的农村家庭,据我妈说,我出生的时候才4斤多,而她生完我以后月子里就瘦到70斤。家里一直很穷,父母都是在菜市场卖菜的,家里还有几亩地种庄稼的。我很小开始就要去帮忙,暑假的生活就是帮忙去卖菜和割稻谷,那时候自己对于割稻谷这种事情有着莫名的恐惧,生怕自己长大以后还是每年都要过着割稻谷这种日子。父母因为忙于生计无暇顾及我的学习,幸好我因为看到他们这样子的生活,内心里有深深的恐惧感,驱使着我</div> </li> <li><a href="/article/1950229040682037248.htm" title="48. 旋转图像 - 力扣(LeetCode)" target="_blank">48. 旋转图像 - 力扣(LeetCode)</a> <span class="text-muted">Fiee-77</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E7%BB%84/1.htm">数组</a><a class="tag" taget="_blank" href="/search/leetcode/1.htm">leetcode</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E7%BB%84/1.htm">数组</a> <div>题目:给定一个n×n的二维矩阵matrix表示一个图像。请你将图像顺时针旋转90度。你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]示例2:输入:matrix=[[5,1,9,11],[2,4,8,10],[13,3,6,</div> </li> <li><a href="/article/1950228596207448064.htm" title="日更50天有什么收益?" target="_blank">日更50天有什么收益?</a> <span class="text-muted">星湾二宝</span> <div>坚持在平台上日更50天了,平台也为我生成了日更50天徽章,小开心一下这份坚持。日更50天徽章那坚持50天都有哪些收益呢?收益一,就是最直观的那些钻和贝,我这边确实不太高,但是这些贝足够支撑我保持会员的资格,能够在发文的时候帮助友友们去除广告,方便阅读。钻和贝收益二,文章的收获,日更50天,坚持写作3.7万文字,书写的文字也从开始的流水账/碎碎念逐渐加入自己的思考和观点。以前,一个念头会一晃而过,如</div> </li> <li><a href="/article/1950228031117258752.htm" title="深入解析JVM工作原理:从字节码到机器指令的全过程" target="_blank">深入解析JVM工作原理:从字节码到机器指令的全过程</a> <span class="text-muted"></span> <div>一、JVM概述Java虚拟机(JVM)是Java平台的核心组件,它实现了Java"一次编写,到处运行"的理念。JVM是一个抽象的计算机器,它有自己的指令集和运行时内存管理机制。JVM的主要职责:加载:读取.class文件并验证其正确性存储:管理内存分配和垃圾回收执行:解释或编译字节码为机器指令安全:提供沙箱环境限制恶意代码二、JVM架构详解JVM由三个主要子系统组成:1.类加载子系统类加载过程分为</div> </li> <li><a href="/article/1950228031524106240.htm" title="Spring进阶 - SpringMVC实现原理之DispatcherServlet处理请求的过程" target="_blank">Spring进阶 - SpringMVC实现原理之DispatcherServlet处理请求的过程</a> <span class="text-muted">倾听铃的声</span> <a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/mvc/1.htm">mvc</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a> <div>前文我们有了IOC的源码基础以及SpringMVC的基础,我们便可以进一步深入理解SpringMVC主要实现原理,包含DispatcherServlet的初始化过程和DispatcherServlet处理请求的过程的源码解析。本文是第二篇:DispatcherServlet处理请求的过程的源码解析。@pdaiSpring进阶-SpringMVC实现原理之DispatcherServlet处理请求的</div> </li> <li><a href="/article/1950227573938122752.htm" title="2019-06-05" target="_blank">2019-06-05</a> <span class="text-muted">第十七把巴鲁克</span> <div>今天去实验田里实习,见到了福寿螺真的可怕且牛皮,六级也快来了,说实话还是害怕。我昨天考了环工原理,真的太难了,太烦了,理工科真的难,烦。实验报告还是没写,要抓紧速度抓紧时间,还是应该学会努力学习,远离一些不上进的事物。</div> </li> <li><a href="/article/1950227023859347456.htm" title="Linux系统配置(应用程序)" target="_blank">Linux系统配置(应用程序)</a> <span class="text-muted">1风天云月</span> <a class="tag" taget="_blank" href="/search/Linux/1.htm">Linux</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F/1.htm">应用程序</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E8%AF%91%E5%AE%89%E8%A3%85/1.htm">编译安装</a><a class="tag" taget="_blank" href="/search/rpm/1.htm">rpm</a><a class="tag" taget="_blank" href="/search/http/1.htm">http</a> <div>目录前言一、应用程序概述1、命令与程序的关系2、程序的组成3、软件包封装类型二、RPM1、RPM概述2、RPM用法三、编译安装1、解包2、配置3、编译4、安装5、启用httpd服务结语前言在Linux中的应用程序被视为将软件包安装到系统中后产生的各种文档,其中包括可执行文件、配置文件、用户手册等内容,这些文档被组织为一个有机的整体,为用户提供特定的功能,因此对于“安装软件包”与“安装应用程序”这两</div> </li> <li><a href="/article/1950225785054883840.htm" title="Java | 多线程经典问题 - 售票" target="_blank">Java | 多线程经典问题 - 售票</a> <span class="text-muted">Ada54</span> <div>一、售票需求1)同一个票池2)多个窗口卖票,不能出售同一张票二、售票问题代码实现(线程与进程小总结,请戳:Java|线程和进程,创建线程)step1:定义SaleWindow类实现Runnable接口,覆盖run方法step2:实例化SaleWindow对象,创建Thread对象,将SaleWindow作为参数传给Thread类的构造函数,然后通过Thread.start()方法启动线程step3</div> </li> <li><a href="/article/1950224745421139968.htm" title="车载刷写架构 --- 刷写思考扩展" target="_blank">车载刷写架构 --- 刷写思考扩展</a> <span class="text-muted">汽车电子实验室</span> <a class="tag" taget="_blank" href="/search/%E7%94%B5%E5%AD%90%E7%94%B5%E5%99%A8%E6%9E%B6%E6%9E%84%E2%80%94%E2%80%94%E5%88%B7%E5%86%99%E6%96%B9%E6%A1%88/1.htm">电子电器架构——刷写方案</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%85%B3%E4%BA%8E%E7%BD%91%E5%85%B3%E8%BD%AC%E5%8F%91%E6%80%A7%E8%83%BD%E5%BC%95%E8%B5%B7%E7%9A%84%E6%80%9D%E8%80%83/1.htm">关于网关转发性能引起的思考</a><a class="tag" taget="_blank" href="/search/%E6%B1%BD%E8%BD%A6%E4%B8%AD%E5%A4%AE%E6%8E%A7%E5%88%B6%E5%8D%95%E5%85%83HPC%E8%BD%AF%E4%BB%B6%E6%9E%B6%E6%9E%84/1.htm">汽车中央控制单元HPC软件架构</a><a class="tag" taget="_blank" href="/search/%E8%BD%A6%E8%BD%BD%E8%AF%8A%E6%96%AD%E8%BF%9B%E9%98%B6%E7%AF%87/1.htm">车载诊断进阶篇</a> <div>我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是系统思考、大胆设计、小心求证;三是“一张纸制度”,也就是无论多么复杂的工作内容,要在一张纸上描述清楚;四是要坚决反对虎头蛇尾,反对繁文缛节,反对老</div> </li> <li><a href="/article/1950223878005518336.htm" title="为什么焦虑、抑郁、自残的青少年越来越多?" target="_blank">为什么焦虑、抑郁、自残的青少年越来越多?</a> <span class="text-muted">精神健康</span> <div>很多家长觉得没缺孩子吃的穿的,他们有安稳的生活,他们有什么可焦虑、抑郁的,但现在的孩子,学习压力越来越大,每天休息的时间越来越少,出现焦虑抑郁是很正常的。从发展的角度看,青少年时期,人的身体、情绪,智力、人格都急剧发展,正从未成熟走向成熟,情绪起伏不定,易冲动,再者,由于缺乏生活经验,以及来自于家长、学校、社会的各种要求和压力,从而不知所措,心中的焦虑、恐惧、彷徨得不到及时的排解,从而导致心理上的</div> </li> <li><a href="/article/1950222858454102016.htm" title="《路远连着天》 第二 章 在 路 上 7" target="_blank">《路远连着天》 第二 章 在 路 上 7</a> <span class="text-muted">亚宁</span> <div>大路镇的街道两旁尽是店铺,气派者是红门柱子雕花门窗,一般则多为布匹小百货店,还有几家门面朝外的车马大店,和一家颇有气势的典当铺。街上来往人还真不少,有挑担叫卖水果的,有背篓子路过的,还有衣冠楚楚,悠哉悠哉,甩着双手散步的有钱爷。耿六想着先寻姑妈家,还是先到兵营看那几个土匪呢?也只是一转念,他选择了后者,跟在几个闲人后,就来到了在镇外山头上曾看到过的那处飘着晴天白日旗的兵营门外。这里,围观的人乱哄哄</div> </li> <li><a href="/article/1950222857124507648.htm" title="读书打卡《别想太多啦》" target="_blank">读书打卡《别想太多啦》</a> <span class="text-muted">chenchen_68ed</span> <div>第一,世间之事,不去尝试永远不知道其中的奥秘,在尝试中有失败是必然的。如果担心失败,那什么都学不会。第二,经历的失败越多,越会对失败者抱有宽容的态度,“原来如此,我也经历过类似的失败啦,那只是暂时的”。经历越多失败的长者,越能包容别人,这也就是所谓的“越年长越宽容”。成熟的人,就是在众多失败经历中不断学习,并接纳别人的失败。对于他人的小小过失不吹毛求疵,自己的心态会更加平和。在不断失败中学习,让自</div> </li> <li><a href="/article/1950222602781913088.htm" title="2023-01-26" target="_blank">2023-01-26</a> <span class="text-muted">胡喜平</span> <div>我觉得《可见的学习》一书确实从底层逻辑说清楚了,教学的本质。可是太多术语和概念,一时间难以消化啊。而且知道和懂得有距离,运用就更不行了,需要高手和专家的指导。我需要多听听新课标的讲座了,来反复印证。读论文也有了一点点灵感,明天修改我的论文。</div> </li> <li><a href="/article/1950221204333850624.htm" title="平静得接受自己的笨拙 20190118 晨间日记" target="_blank">平静得接受自己的笨拙 20190118 晨间日记</a> <span class="text-muted">吴伯符</span> <div>图片发自App最近做了一个关于微习惯的分享,这里有八个字:微量开始,超额完成。这里的言下之意其实是要你在一开始的时候,平静地接受自己的笨拙。接受自己的笨拙,理解自己的笨拙,放慢速度尝试,观察哪里可以改进,再反复练习,观察自己哪里可以再进一步改进,再反复…这是学习一切技能的必须的过程。这里的两个关键点是:1.尽快的开始这个过程,这就能够用到微习惯的微量开始。2.尽快的度过这个过程,这就需要用到超额完</div> </li> <li><a href="/article/1950219924043526144.htm" title="二十四节气组诗 谷雨" target="_blank">二十四节气组诗 谷雨</a> <span class="text-muted">离陌_6639</span> <div>图片来源网络,若侵犯了你的权益,请联系我删除6.谷雨文/离陌背上行囊背上如行囊的我从此任行程马不停蹄今天家乡的田野春雨快马加鞭播下希望的种子观音不语目送着我和夏天一道在观音山出关图片来源网络,若侵犯了你的权益,请联系我删除你好啊,我是离陌,已然在懵懂中走过了16年的岁月,为了珍惜当下的每一秒,所以立志做一名终身学习者。文学对于我来说是一种信仰,诗歌是我的生命。人生之道,四通八达,即入文学,自当持之</div> </li> <li><a href="/article/1950219036667211776.htm" title="你好,2020年" target="_blank">你好,2020年</a> <span class="text-muted">瑄瑄妍妍的妈咪</span> <div>早上好,今天是2020年的第一天,也就是元旦,新年新的一天开始了。新的开始,重新规划未来的一年。从今天开始,用了一个新的记账软件,之前的随手记软件,也没有删除,只是重新下载了一个别的软件,开始一个新的记账旅程,对于理财开支,有个新的规划。通过小红书视频软件,学习了不少育儿知识,和各种不同的美食,以后动手制作,给宝宝做健康美味的营养餐。学习方面,继续学英语吧!虽然是抽出时间学的,进度也比较慢,但是积</div> </li> <li><a href="/article/1950218946015719424.htm" title="图论算法经典题目解析:DFS、BFS与拓扑排序实战" target="_blank">图论算法经典题目解析:DFS、BFS与拓扑排序实战</a> <span class="text-muted">周童學</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/1.htm">数据结构与算法</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E4%BC%98%E5%85%88/1.htm">深度优先</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E5%9B%BE%E8%AE%BA/1.htm">图论</a> <div>图论算法经典题目解析:DFS、BFS与拓扑排序实战图论问题是算法面试中的高频考点,本博客将通过四道LeetCode经典题目(均来自"Top100Liked"题库),深入讲解图论的核心算法思想和实现技巧。涵盖DFS、BFS、拓扑排序和前缀树等知识点,每道题配有Java实现和易错点分析。1.岛屿数量(DFS遍历)问题描述给定一个由'1'(陆地)和'0'(水)组成的二维网格,计算岛屿的数量。岛屿由水平或</div> </li> <li><a href="/article/1950218399846035456.htm" title="营销活动-大转盘" target="_blank">营销活动-大转盘</a> <span class="text-muted">無缺520</span> <div>写在前面最近,首先营销活动工具这块我是再熟悉不过了。曾经做了不下20个活动工具,然后通过监控活动数据反推活动的好坏。文中主要讲解幸运大转盘营销工具一.大转盘定义大转盘是比较常见的营销活动工具,它是通过消费者用户控制【开始/停止】操作获得奖品物品。用户在不知道自己能获得什么奖品的条件下,然后通过抽奖,大概率的获得未知的奖品。类似最近流行的盲盒玩法。二.为什么做大转盘大转盘是最常用的抽奖类的活动工具之</div> </li> <li><a href="/article/1950217305761837056.htm" title="5G基站信号加速器!AD8021ARZ-REEL7亚德诺 超低噪声高速电压放大器 专利失真消除技术!" target="_blank">5G基站信号加速器!AD8021ARZ-REEL7亚德诺 超低噪声高速电压放大器 专利失真消除技术!</a> <span class="text-muted">深圳市尚想信息技术有限公司</span> <a class="tag" taget="_blank" href="/search/5G%E9%80%9A%E4%BF%A1/1.htm">5G通信</a><a class="tag" taget="_blank" href="/search/%E9%AB%98%E9%80%9F%E8%BF%90%E6%94%BE/1.htm">高速运放</a><a class="tag" taget="_blank" href="/search/ADI%E9%BB%91%E7%A7%91%E6%8A%80/1.htm">ADI黑科技</a><a class="tag" taget="_blank" href="/search/8K%E8%A7%86%E9%A2%91/1.htm">8K视频</a><a class="tag" taget="_blank" href="/search/%E5%8C%BB%E7%96%97%E8%B6%85%E5%A3%B0/1.htm">医疗超声</a> <div>AD8021ARZ-REEL7ADI:重新定义高速放大器的性能极限!一、产品简介AD8021ARZ-REEL7是ADI(亚德诺半导体)推出的超低噪声高速电压反馈放大器,采用XFCB工艺和专利失真消除技术,专为4K/8K视频处理、医疗成像、5G通信等超高频应用设计。以1.8GHz带宽和0.1nV/√Hz超低噪声,成为高速信号调理的终极解决方案!二、五大颠覆性优势军工级信号保真度1.8GHz-3dB带</div> </li> <li><a href="/article/1950216170401492992.htm" title="常规笔记本和加固笔记本的区别" target="_blank">常规笔记本和加固笔记本的区别</a> <span class="text-muted">luchengtech</span> <a class="tag" taget="_blank" href="/search/%E7%94%B5%E8%84%91/1.htm">电脑</a><a class="tag" taget="_blank" href="/search/%E4%B8%89%E9%98%B2%E7%AC%94%E8%AE%B0%E6%9C%AC/1.htm">三防笔记本</a><a class="tag" taget="_blank" href="/search/%E5%8A%A0%E5%9B%BA%E8%AE%A1%E7%AE%97%E6%9C%BA/1.htm">加固计算机</a><a class="tag" taget="_blank" href="/search/%E5%8A%A0%E5%9B%BA%E7%AC%94%E8%AE%B0%E6%9C%AC/1.htm">加固笔记本</a> <div>在现代科技产品中,笔记本电脑因其便携性和功能性被广泛应用。根据使用场景和需求的不同,笔记本可分为常规笔记本和加固笔记本,二者在多个方面存在显著区别。适用场景是区分二者的重要标志。常规笔记本主要面向普通消费者和办公人群,适用于家庭娱乐、日常办公、学生学习等相对稳定的室内环境。比如,人们在家用它追剧、处理文档,学生在教室用它完成作业。而加固笔记本则专为特殊行业设计,像军事、野外勘探、工业制造、交通运输</div> </li> <li><a href="/article/120.htm" title="web前段跨域nginx代理配置" target="_blank">web前段跨域nginx代理配置</a> <span class="text-muted">刘正强</span> <a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a><a class="tag" taget="_blank" href="/search/cms/1.htm">cms</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a> <div>nginx代理配置可参考server部分 server {         listen       80;         server_name  localhost; </div> </li> <li><a href="/article/247.htm" title="spring学习笔记" target="_blank">spring学习笔记</a> <span class="text-muted">caoyong</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a> <div>一、概述     a>、核心技术 : IOC与AOP b>、开发为什么需要面向接口而不是实现     接口降低一个组件与整个系统的藕合程度,当该组件不满足系统需求时,可以很容易的将该组件从系统中替换掉,而不会对整个系统产生大的影响 c>、面向接口编口编程的难点在于如何对接口进行初始化,(使用工厂设计模式) </div> </li> <li><a href="/article/374.htm" title="Eclipse打开workspace提示工作空间不可用" target="_blank">Eclipse打开workspace提示工作空间不可用</a> <span class="text-muted">0624chenhong</span> <a class="tag" taget="_blank" href="/search/eclipse/1.htm">eclipse</a> <div>做项目的时候,难免会用到整个团队的代码,或者上一任同事创建的workspace, 1.电脑切换账号后,Eclipse打开时,会提示Eclipse对应的目录锁定,无法访问,根据提示,找到对应目录,G:\eclipse\configuration\org.eclipse.osgi\.manager,其中文件.fileTableLock提示被锁定。 解决办法,删掉.fileTableLock文件,重</div> </li> <li><a href="/article/501.htm" title="Javascript 面向对面写法的必要性?" target="_blank">Javascript 面向对面写法的必要性?</a> <span class="text-muted">一炮送你回车库</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a> <div>现在Javascript面向对象的方式来写页面很流行,什么纯javascript的mvc框架都出来了:ember 这是javascript层的mvc框架哦,不是j2ee的mvc框架   我想说的是,javascript本来就不是一门面向对象的语言,用它写出来的面向对象的程序,本身就有些别扭,很多人提到js的面向对象首先提的是:复用性。那么我请问你写的js里有多少是可以复用的,用fu</div> </li> <li><a href="/article/628.htm" title="js array对象的迭代方法" target="_blank">js array对象的迭代方法</a> <span class="text-muted">换个号韩国红果果</span> <a class="tag" taget="_blank" href="/search/array/1.htm">array</a> <div>1.forEach 该方法接受一个函数作为参数, 对数组中的每个元素 使用该函数  return 语句失效 function square(num) { print(num, num * num); } var nums = [1,2,3,4,5,6,7,8,9,10]; nums.forEach(square); 2.every 该方法接受一个返回值为布尔类型</div> </li> <li><a href="/article/755.htm" title="对Hibernate缓存机制的理解" target="_blank">对Hibernate缓存机制的理解</a> <span class="text-muted">归来朝歌</span> <a class="tag" taget="_blank" href="/search/session/1.htm">session</a><a class="tag" taget="_blank" href="/search/%E4%B8%80%E7%BA%A7%E7%BC%93%E5%AD%98/1.htm">一级缓存</a><a class="tag" taget="_blank" href="/search/%E5%AF%B9%E8%B1%A1%E6%8C%81%E4%B9%85%E5%8C%96/1.htm">对象持久化</a> <div>在hibernate中session一级缓存机制中,有这么一种情况: 问题描述:我需要new一个对象,对它的几个字段赋值,但是有一些属性并没有进行赋值,然后调用 session.save()方法,在提交事务后,会出现这样的情况: 1:在数据库中有默认属性的字段的值为空 2:既然是持久化对象,为什么在最后对象拿不到默认属性的值? 通过调试后解决方案如下: 对于问题一,如你在数据库里设置了</div> </li> <li><a href="/article/882.htm" title="WebService调用错误合集" target="_blank">WebService调用错误合集</a> <span class="text-muted">darkranger</span> <a class="tag" taget="_blank" href="/search/webservice/1.htm">webservice</a> <div> Java.Lang.NoClassDefFoundError: Org/Apache/Commons/Discovery/Tools/DiscoverSingleton 调用接口出错, 一个简单的WebService import org.apache.axis.client.Call;import org.apache.axis.client.Service; 首先必不可</div> </li> <li><a href="/article/1009.htm" title="JSP和Servlet的中文乱码处理" target="_blank">JSP和Servlet的中文乱码处理</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/Java+Web/1.htm">Java Web</a> <div>JSP和Servlet的中文乱码处理 前几天学习了JSP和Servlet中有关中文乱码的一些问题,写成了博客,今天进行更新一下。应该是可以解决日常的乱码问题了。现在作以下总结希望对需要的人有所帮助。我也是刚学,所以有不足之处希望谅解。 一、表单提交时出现乱码: 在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式。所以</div> </li> <li><a href="/article/1136.htm" title="面试经典六问" target="_blank">面试经典六问</a> <span class="text-muted">atongyeye</span> <a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a> <div>题记:因为我不善沟通,所以在面试中经常碰壁,看了网上太多面试宝典,基本上不太靠谱。只好自己总结,并试着根据最近工作情况完成个人答案。以备不时之需。 以下是人事了解应聘者情况的最典型的六个问题: 1 简单自我介绍 关于这个问题,主要为了弄清两件事,一是了解应聘者的背景,二是应聘者将这些背景信息组织成合适语言的能力。 我的回答:(针对技术面试回答,如果是人事面试,可以就掌</div> </li> <li><a href="/article/1263.htm" title="contentResolver.query()参数详解" target="_blank">contentResolver.query()参数详解</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/query%28%29%E8%AF%A6%E8%A7%A3/1.htm">query()详解</a> <div>收藏csdn的博客,介绍的比较详细,新手值得一看 1.获取联系人姓名 一个简单的例子,这个函数获取设备上所有的联系人ID和联系人NAME。 [java]  view plain copy   public void fetchAllContacts() {      </div> </li> <li><a href="/article/1390.htm" title="ora-00054:resource busy and acquire with nowait specified解决方法" target="_blank">ora-00054:resource busy and acquire with nowait specified解决方法</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/kill/1.htm">kill</a><a class="tag" taget="_blank" href="/search/nowait/1.htm">nowait</a> <div>        当某个数据库用户在数据库中插入、更新、删除一个表的数据,或者增加一个表的主键时或者表的索引时,常常会出现ora-00054:resource busy and acquire with nowait specified这样的错误。主要是因为有事务正在执行(或者事务已经被锁),所有导致执行不成功。 1.下面的语句</div> </li> <li><a href="/article/1517.htm" title="web 开发乱码" target="_blank">web 开发乱码</a> <span class="text-muted">征客丶</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a> <div>以下前端都是 utf-8 字符集编码 一、后台接收 1.1、 get 请求乱码 get 请求中,请求参数在请求头中; 乱码解决方法: a、通过在web 服务器中配置编码格式:tomcat 中,在 Connector 中添加URIEncoding="UTF-8"; 1.2、post 请求乱码 post 请求中,请求参数分两部份, 1.2.1、url?参数,</div> </li> <li><a href="/article/1644.htm" title="【Spark十六】: Spark SQL第二部分数据源和注册表的几种方式" target="_blank">【Spark十六】: Spark SQL第二部分数据源和注册表的几种方式</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/spark/1.htm">spark</a> <div>Spark SQL数据源和表的Schema case class apply schema parquet json JSON数据源 准备源数据 {"name":"Jack", "age": 12, "addr":{"city":"beijing&</div> </li> <li><a href="/article/1771.htm" title="JVM学习之:调优总结 -Xms -Xmx -Xmn -Xss" target="_blank">JVM学习之:调优总结 -Xms -Xmx -Xmn -Xss</a> <span class="text-muted">BlueSkator</span> <a class="tag" taget="_blank" href="/search/-Xss/1.htm">-Xss</a><a class="tag" taget="_blank" href="/search/-Xmn/1.htm">-Xmn</a><a class="tag" taget="_blank" href="/search/-Xms/1.htm">-Xms</a><a class="tag" taget="_blank" href="/search/-Xmx/1.htm">-Xmx</a> <div>  堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置: java -Xmx355</div> </li> <li><a href="/article/1898.htm" title="jqGrid 各种参数 详解(转帖)" target="_blank">jqGrid 各种参数 详解(转帖)</a> <span class="text-muted">BreakingBad</span> <a class="tag" taget="_blank" href="/search/jqGrid/1.htm">jqGrid</a> <div>  jqGrid 各种参数 详解 分类:  源代码分享  个人随笔请勿参考  解决开发问题 2012-05-09 20:29   84282人阅读   评论(22)   收藏   举报 jquery 服务器 parameters function ajax string   </div> </li> <li><a href="/article/2025.htm" title="读《研磨设计模式》-代码笔记-代理模式-Proxy" target="_blank">读《研磨设计模式》-代码笔记-代理模式-Proxy</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/ import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflect.Proxy; /* * 下面</div> </li> <li><a href="/article/2152.htm" title="应用升级iOS8中遇到的一些问题" target="_blank">应用升级iOS8中遇到的一些问题</a> <span class="text-muted">chenhbc</span> <a class="tag" taget="_blank" href="/search/ios8/1.htm">ios8</a><a class="tag" taget="_blank" href="/search/%E5%8D%87%E7%BA%A7iOS8/1.htm">升级iOS8</a> <div>1、很奇怪的问题,登录界面,有一个判断,如果不存在某个值,则跳转到设置界面,ios8之前的系统都可以正常跳转,iOS8中代码已经执行到下一个界面了,但界面并没有跳转过去,而且这个值如果设置过的话,也是可以正常跳转过去的,这个问题纠结了两天多,之前的判断我是在 -(void)viewWillAppear:(BOOL)animated  中写的,最终的解决办法是把判断写在 -(void</div> </li> <li><a href="/article/2279.htm" title="工作流与自组织的关系?" target="_blank">工作流与自组织的关系?</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a> <div>  目前的工作流系统中的节点及其相互之间的连接是事先根据管理的实际需要而绘制好的,这种固定的模式在实际的运用中会受到很多限制,特别是节点之间的依存关系是固定的,节点的处理不考虑到流程整体的运行情况,细节和整体间的关系是脱节的,那么我们提出一个新的观点,一个流程是否可以通过节点的自组织运动来自动生成呢?这种流程有什么实际意义呢?   这里有篇论文,摘要是:“针对网格中的服务</div> </li> <li><a href="/article/2406.htm" title="Oracle11.2新特性之INSERT提示IGNORE_ROW_ON_DUPKEY_INDEX" target="_blank">Oracle11.2新特性之INSERT提示IGNORE_ROW_ON_DUPKEY_INDEX</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a> <div>insert提示IGNORE_ROW_ON_DUPKEY_INDEX 转自:http://space.itpub.net/18922393/viewspace-752123 在 insert into tablea ...select * from tableb中,如果存在唯一约束,会导致整个insert操作失败。使用IGNORE_ROW_ON_DUPKEY_INDEX提示,会忽略唯一</div> </li> <li><a href="/article/2533.htm" title="二叉树:堆" target="_blank">二叉树:堆</a> <span class="text-muted">dieslrae</span> <a class="tag" taget="_blank" href="/search/%E4%BA%8C%E5%8F%89%E6%A0%91/1.htm">二叉树</a> <div>    这里说的堆其实是一个完全二叉树,每个节点都不小于自己的子节点,不要跟jvm的堆搞混了.由于是完全二叉树,可以用数组来构建.用数组构建树的规则很简单:     一个节点的父节点下标为: (当前下标 - 1)/2     一个节点的左节点下标为: 当前下标 * 2 + 1   &</div> </li> <li><a href="/article/2660.htm" title="C语言学习八结构体" target="_blank">C语言学习八结构体</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a> <div>为什么需要结构体,看代码 # include <stdio.h> struct Student //定义一个学生类型,里面有age, score, sex, 然后可以定义这个类型的变量 { int age; float score; char sex; } int main(void) { struct Student st = {80, 66.6,</div> </li> <li><a href="/article/2787.htm" title="centos安装golang" target="_blank">centos安装golang</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a> <div>#在国内镜像下载二进制包 wget -c  http://www.golangtc.com/static/go/go1.4.1.linux-amd64.tar.gz tar -C /usr/local -xzf go1.4.1.linux-amd64.tar.gz   #把golang的bin目录加入全局环境变量 cat >>/etc/profile<</div> </li> <li><a href="/article/2914.htm" title="10.性能优化-监控-MySQL慢查询" target="_blank">10.性能优化-监控-MySQL慢查询</a> <span class="text-muted">frank1234</span> <a class="tag" taget="_blank" href="/search/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/1.htm">性能优化</a><a class="tag" taget="_blank" href="/search/MySQL%E6%85%A2%E6%9F%A5%E8%AF%A2/1.htm">MySQL慢查询</a> <div>1.记录慢查询配置 show variables where variable_name like 'slow%' ; --查看默认日志路径 查询结果:--不用的机器可能不同 slow_query_log_file=/var/lib/mysql/centos-slow.log 修改mysqld配置文件:/usr /my.cnf[一般在/etc/my.cnf,本机在/user/my.cn</div> </li> <li><a href="/article/3041.htm" title="Java父类取得子类类名" target="_blank">Java父类取得子类类名</a> <span class="text-muted">happyqing</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/this/1.htm">this</a><a class="tag" taget="_blank" href="/search/%E7%88%B6%E7%B1%BB/1.htm">父类</a><a class="tag" taget="_blank" href="/search/%E5%AD%90%E7%B1%BB/1.htm">子类</a><a class="tag" taget="_blank" href="/search/%E7%B1%BB%E5%90%8D/1.htm">类名</a> <div>  在继承关系中,不管父类还是子类,这些类里面的this都代表了最终new出来的那个类的实例对象,所以在父类中你可以用this获取到子类的信息!   package com.urthinker.module.test; import org.junit.Test; abstract class BaseDao<T> { public void </div> </li> <li><a href="/article/3168.htm" title="Spring3.2新注解@ControllerAdvice" target="_blank">Spring3.2新注解@ControllerAdvice</a> <span class="text-muted">jinnianshilongnian</span> <a class="tag" taget="_blank" href="/search/%40Controller/1.htm">@Controller</a> <div>@ControllerAdvice,是spring3.2提供的新注解,从名字上可以看出大体意思是控制器增强。让我们先看看@ControllerAdvice的实现:   @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Component public @interface Co</div> </li> <li><a href="/article/3295.htm" title="Java spring mvc多数据源配置" target="_blank">Java spring mvc多数据源配置</a> <span class="text-muted">liuxihope</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a> <div>转自:http://www.itpub.net/thread-1906608-1-1.html 1、首先配置两个数据库 <bean id="dataSourceA" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close&quo</div> </li> <li><a href="/article/3422.htm" title="第12章 Ajax(下)" target="_blank">第12章 Ajax(下)</a> <span class="text-muted">onestopweb</span> <a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a> <div>index.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/</div> </li> <li><a href="/article/3549.htm" title="BW / Universe Mappings" target="_blank">BW / Universe Mappings</a> <span class="text-muted">blueoxygen</span> <a class="tag" taget="_blank" href="/search/BO/1.htm">BO</a> <div>  BW Element OLAP Universe Element Cube  Dimension Class Charateristic A class with dimension and detail objects (Detail objects for key and desription) Hi</div> </li> <li><a href="/article/3676.htm" title="Java开发熟手该当心的11个错误" target="_blank">Java开发熟手该当心的11个错误</a> <span class="text-muted">tomcat_oracle</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%A4%9A%E7%BA%BF%E7%A8%8B/1.htm">多线程</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/1.htm">单元测试</a> <div>#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收 测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为</div> </li> <li><a href="/article/3803.htm" title="推行国产操作系统的优劣" target="_blank">推行国产操作系统的优劣</a> <span class="text-muted">yananay</span> <a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E5%9B%BD%E4%BA%A7%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/1.htm">国产操作系统</a> <div>最近刮起了一股风,就是去“国外货”。从应用程序开始,到基础的系统,数据库,现在已经刮到操作系统了。原因就是“棱镜计划”,使我们终于认识到了国外货的危害,开始重视起了信息安全。操作系统是计算机的灵魂。既然是灵魂,为了信息安全,那我们就自然要使用和推行国货。可是,一味地推行,是否就一定正确呢? 先说说信息安全。其实从很早以来大家就在讨论信息安全。很多年以前,就据传某世界级的网络设备制造商生产的交</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>