day 16 C# 窗体常用的控件设计(1)

day 16 C#打卡

1.用富文本框控件打开rtf文件显示

private void Form2_Load(object sender, EventArgs e)
        {
            richTextBox1.LoadFile(@"D:\data\File\1.rtf", 
            RichTextBoxStreamType.RichText);
        }

richTextBox1.LoadFile(文件路径,文件类型);
其中,文件路径如果只是更改文件后缀名为 rtf ,会识别不出来。要用Word文档另存为时就选择保存为 rtf 文件。
RichText为文件类型,表示是RTF格式流。
day 16 C# 窗体常用的控件设计(1)_第1张图片
2.用复选框控件制作答题选项

private void button1_Click(object sender, EventArgs e)
        {
            if (checkBox1.Checked && checkBox3.Checked
                && !checkBox2.Checked && !checkBox4.Checked)
                MessageBox.Show("您答对了,真棒!", "信息提示",
                    MessageBoxButtons.OK);
            else
                MessageBox.Show("您答错啦,继续努力吧", "信息提示",
                    MessageBoxButtons.OK);
        }

在分组框GroupBox中放了四个复选框CheckBox,再设置按钮点击事件。
day 16 C# 窗体常用的控件设计(1)_第2张图片
3.用图片框控件切换图片

 private void button1_Click(object sender, EventArgs e)
        {
            pictureBox1.Image = Image.FromFile(@"C:\Users\Pictures\Saved Pictures\春.jpg");
        }

        private void button2_Click(object sender, EventArgs e)
        {
            pictureBox1.Image = Image.FromFile(@"C:\Users\Pictures\Saved Pictures\夏.jpg");
        }

        private void button3_Click(object sender, EventArgs e)
        {
            pictureBox1.Image = Image.FromFile(@"C:\Users\Pictures\Saved Pictures\秋.jpg");
        }

        private void button4_Click(object sender, EventArgs e)
        {
            pictureBox1.Image = Image.FromFile(@"C:\Users\Pictures\Saved Pictures\冬.jpg");
        }

FromFile里填个路径就可以了。
可以在PictureBox控件的SizeMode属性里设置为StretchImage(将图片框中的图像拉伸或收缩,适合图片框的大小)
day 16 C# 窗体常用的控件设计(1)_第3张图片
4.通过文本框控件向组合框控件里添加项

  private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text != "")//如果文本不为空则可以执行以下代码
                if (!comboBox1.Items.Contains(textBox1.Text))
                    comboBox1.Items.Add(textBox1.Text);
            /*如果comboBox1里不包含textBox1里的文本,就将textBox1里的文本
            添加到comboBox1里*/
        }

day 16 C# 窗体常用的控件设计(1)_第4张图片
右边那个组合框是有下拉菜单的,添加的不重复项都在里面。
列表框的Items属性和组合框的一样,它是存放列表框中所有项的集合。

5.在两个列表框控件中移动数据项

 private void Form3_Load(object sender, EventArgs e)
        {
            listBox1.Items.Add("清华大学");
            listBox1.Items.Add("北京大学");
            listBox1.Items.Add("浙江大学");
            listBox1.Items.Add("南京大学");
            listBox1.Items.Add("武汉大学");
            listBox1.Items.Add("华中科技大学");
            listBox1.Items.Add("中国人民大学");
            listBox1.Items.Add("复旦大学");
            enbutton();//调用方法
        }
        private void enbutton()
        {
            if(listBox1.Items.Count==0)//当左列表框为空时右移命令按钮不可用
            {
                button1.Enabled = false;
                button2.Enabled = false;
            }
            else//不为空时右移命令按钮可用
            {
                button1.Enabled = true;
                button2.Enabled = true;
            }

            if (listBox2.Items.Count == 0)//当右列表框为空时左移命令按钮不可用
            {
                button3.Enabled = false;
                button4.Enabled = false;
            }
            else//不为空时左移命令按钮可用
            {
                button3.Enabled = true;
                button4.Enabled = true;
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if(listBox1.SelectedIndex>=0)//左列表框中选中项移到右列表框中
            {
                listBox2.Items.Add(listBox1.SelectedItem);//向列表2中添加列表1的选中项
                listBox1.Items.RemoveAt(listBox1.SelectedIndex);
            }
            enbutton();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            foreach (object item in listBox1.Items)//左列表框中所有项移到右列表框中
                listBox2.Items.Add(item);
            listBox1.Items.Clear();//清空列表1
            enbutton();
        }

        private void button3_Click(object sender, EventArgs e)
        {
            if (listBox2.SelectedIndex >= 0)//右列表框中选中项移到左列表框中
            {
                listBox1.Items.Add(listBox2.SelectedItem);
                listBox2.Items.RemoveAt(listBox2.SelectedIndex);
            }
            enbutton();
        }

        private void button4_Click(object sender, EventArgs e)
        {
            foreach (object item in listBox2.Items)//右列表框中所有项移到左列表框中
                listBox1.Items.Add(item);
            listBox2.Items.Clear();
            enbutton();
        }

day 16 C# 窗体常用的控件设计(1)_第5张图片

你可能感兴趣的:(学习打卡,C/C++/C#,c#,asp.net)