winform 代码生成textbox ,checkbox
参考地址:https://jingyan.baidu.com/article/380abd0a6b80701d90192cde.html
首先搭建好Winform项目框架后,创建窗体页面后自行布局
这里我放置了1个TextBox,3个Button
1 using System.ComponentModel;
2 using System.Data;
3 using System.Drawing;
4 using System.Linq;
5 using System.Text;
6 using System.Text.RegularExpressions;
7 using System.Threading.Tasks;
8 using System.Windows.Forms;
9
10 namespace WinAutoControl_C
11 {
12 public partial class Form1 : Form
13 {
14 public Form1()
15 {
16 InitializeComponent();
17 }
18
19 private void Form1_Load(object sender, EventArgs e)
20 {
21
22 }
23
24 private void 生成_Click(object sender, EventArgs e)
25 {
26
27 Regex regex = new Regex("^[0-9]*$");
28 if (!regex.IsMatch(txt_num.Text))
29 {
30 txt_num.BackColor = System.Drawing.Color.Red;
31 txt_num.Text = string.Empty;
32 MessageBox.Show("输入的值不是数字");
33 return;
34 }
35 txt_num.BackColor = System.Drawing.Color.White;
36 int n = int.Parse(txt_num.Text);
37 int row = 0;
38 for (int i = 0; i < n; i++)
39 {
40 if (i % 5 == 0 && i != 0)
41 {
42 row++;
43 }
44 //参数
45 TextBox box = new TextBox();
46 box.Name = "arryTextBox" + i.ToString();
47 box.Multiline = true;
48 box.Text = string.Format("文本框{0}", i + 1);
49 box.Size = new Size(129, 124);
50 box.Location = new Point(65 + i % 5 * 280, 65 + row * 170);
51 panel6.Controls.Add(box);
52 }
53 }
54
55 private void button1_Click(object sender, EventArgs e)
56 {
57 int row1 = 0;
58 int c = int.Parse(txt_num.Text);
59 for (int i = 0; i < c; i++)
60 {
61 if (i % 5 == 0 && i != 0)
62 {
63 row1++;
64 }
65 //参数名称
66 TextBox box1 = new TextBox();
67 box1.Name = "nameTextBox" + i.ToString();
68 box1.Multiline = true;
69 box1.Text = string.Format("名称{0}", i + 1);
70 box1.Size = new Size(115, 25);
71 box1.Location = new Point(210 + i % 5 * 280, 65 + row1 * 170/*209 + row *50*/);
72 panel6.Controls.Add(box1);
73
74 }
75 }
76 private void button2_Click(object sender, EventArgs e)
77 {
78 int row2 = 0;
79
80 int d = int.Parse(txt_num.Text);
81 for (int i = 0; i < d; i++)
82 {
83 if (i % 5 == 0 && i != 0)
84 {
85 row2++;
86 }
87 //参数名称
88 CheckBox chk = new CheckBox();
89 chk.Name = "nameCheckBox" + i.ToString();
90 chk.Text = string.Format("Chk{0}", i + 1);
91 chk.Size = new Size(100, 20);
92 chk.Location = new Point(210 + i % 5 * 280, 170 + row2 * 170 /*210 + row * 50*/);
93 panel6.Controls.Add(chk);
94
95 }
96 }
97
98 private void txt_num_KeyUp(object sender, KeyEventArgs e)
99 {
100
101 }
102 }
103 }
效果
重点还是Location的位置的计算,自己慢慢找规律,实在不行就找好,规律慢慢修改调整位置。
参考
winform 代码生成textbox ,checkbox的更多相关文章
- winform的Textbox设置只读之后ForeColor无效的解决方法
winform的Textbox设置只读之后ForeColor无效. 通过以下方法就可以解决: 设置为只读之后,把BackColor改一下,然后运行一下窗口,再设置ForeColor就没问题了. tbT ...
- WinForm -- 为TextBox文本框添加鼠标右键菜单
WinForm -- 为TextBox文本框添加鼠标右键菜单 1. 新建一个WinForm项目,放置一个TextBox控件 2. 从工具箱拖进来一个ContextMenuStrip 3. 将TextB ...
- Winform给TextBox设置默认值
Winform给TextBox设置默认值(获取焦点后默认值消失) 主要是通过TextBox的获取焦点Enter和失去焦点Leave两个事件来实现的, 思路如下: 1.设置一个字符串常量,作为TextB ...
- winform的Textbox设置只读之后使用ForeColor更改颜色
winform的Textbox设置只读之后设置ForeColor更改颜色无效.这是 TextBox 默认的行为. 解决方法:设置为只读之后,修改控件的BackColor,再设置ForeColor就可以 ...
- Winform中TextBox控件开启自动提示补全功能
问题:Winform开发中,有一个TextBox控件用以输入姓名,现希望在输入名字时能够自动提示所有可能的名字. 解答:winform中的TextBox控件含有如下三个属性: ① AutoComp ...
- winform中textbox提示框
在winform中向textbox输入内容时下面有提示信息,效果如图所示: private void Form1_Load(object sender, EventArgs e) { Auto ...
- C#winform的textbox怎么设置滚动条
用 C#开发软件的时候文本框textbox是没有滚动条的,而且是单行文本.下面教大家如何设置多行,并且设置横向滚动条和垂直滚动条. 打开VS工具,创建一个winform窗体项目.系统会自动创建一个主窗 ...
- WinForm自定义控件–TextBox扩展
一.简单回顾 在前两节中,对Panel和GroupBox控件进行了相关的扩展应用,主要都是设置控件的边框以及边框颜色等.本节,继续对WinForm现有的控件TextBox进行扩展,来满足实际开发中 ...
- 【转】winform程序textbox滚动条保持在最下面 内容不闪烁
在开发winform程序时,会用到textbox控件来显示信息,当把textbox的Multiline属性改为Ture时(即多行显示状态),ScrollBars属性改为Vertical(内容过多时,显 ...
随机推荐
- Solution -「JSOI 2019」「洛谷 P5334」节日庆典
\(\mathscr{Description}\) Link. 给定字符串 \(S\),求 \(S\) 的每个前缀的最小表示法起始下标(若有多个,取最小的). \(|S|\le3\time ...
- Diary -「PKUSC 2021」游记
出游回来自然而然(?)地进入生产低谷的兔子只能写写游记了 qwq. Day -1 实时反馈赛制不是为防止你被数据调戏,而是给你调戏数据的机会. --鲁迅 PKU 一贯的 \(32\) 发提交实 ...
- 模块和包—Day28
一.模块 模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. import的过程:import一个模块的时候,首先创建一个属于my_module的内存空间,加载my_ ...
- 大厂晋升指南:材料准备,PPT 写作和现场答辩
大部分公司在年初,都是绩效回顾.晋升答辩的时期,对于阿里.美团等不少互联网企业,财年是从前一年的 4 月到第二年的 3 月底,春节回来以后,就是一年一度的述职晋升环节. 这里我结合自己述职以及辅导其他 ...
- PostgreSQL VACUUM 之深入浅出 (三)
VACUUM 相关参数 对 VACUUM 有了一定的了解之后,下面系统介绍下 VACUUM 相关参数. VACUUM 相关参数主要分为三大类. 第一类 与资源相关参数 #--------------- ...
- [旧][Android] Retrofit 源码分析之 Retrofit 对象
备注 原发表于2016.04.27,资料已过时,仅作备份,谨慎参考 前言 在上一周学习了一下 Retrofit 的执行流程.接下来的文章要更为深入地学习 Retrofit 的各个类,这次我们先学习一下 ...
- 学习Spring5必知必会(5)~Spring AOP
一.学习 AOP 思想的准备工作: 1.横切面关注点 在开发中,为了给业务方法中增加日志记录,权限检查,事务控制等功能,此时我们需要在修改业务方法内添加这些零散的功能代码(横切面关注点). 这些零散存 ...
- 更快的网络文件系統 — Oxfs
什麽时候需要网络文件系统 ? 做嵌入式的同学经常会使用 NFS 将 host 上的某个目录挂载到开发板上,方便 host 上编译构建后能直接在板子上运行,减少手工拷贝操作.网站开发时,在 host 上 ...
- Java刷题时常用的标准库数据结构和相应算法
目录 一.线性表(广义的数组) 1. 数组 一维数组的定义和初始化 二维数组的定义和初始化 Arrays工具类的一些常用方法 2. List接口容器 对象的构建 读写和插入删除数据 排序 反转数组 二 ...
- 【C#基础概念】元数据 metadate
元数据是指"描述资料的资料".它被用来概述资料的基础信息,以简化查找过程与方便使用[6]. 创建资料的方法 资料的用途 创建的时间与日期 资料的创建者或作者 资料被创建在电脑网络的 ...