精华内容
下载资源
问答
  • 2021-01-20 19:06:32

    1、新建自定义控件,如下图:

    2、新建完,重写 protected override void OnPaint(PaintEventArgs pe)事件

     protected override void OnPaint(PaintEventArgs pe)
            {
                base.OnPaint(pe);
                Graphics g = this.CreateGraphics();
    
                g.SmoothingMode = SmoothingMode.AntiAlias;
                Brush brush = new SolidBrush(Color.FromArgb(212, 212, 212));
                g.FillEllipse(brush, 0, 0, 100, 100);
                brush = new SolidBrush(Color.FromArgb(169, 169, 169));
                g.FillEllipse(brush, 4, 4, 92, 92);
                brush = new SolidBrush(Color.GreenYellow);//填充的颜色
                g.FillEllipse(brush, 7, 7, 86, 86);
    
                brush = new SolidBrush(Color.FromArgb(75, 75, 75));//填充的颜色
                g.DrawString("83", new Font("微软雅黑", 20), brush, new PointF(18, 35));
                g.DrawString("%", new Font("微软雅黑", 8), brush, new PointF(53, 39));
               //g.DrawString("已用", new Font("微软雅黑", 8), brush, new PointF(53, 51));
                g.Dispose();
            }

    3、生成代码,在工具栏既可看到自定义控件

     

     

    更多相关内容
  • 主要给大家介绍了关于C#创建自定义控件及添加自定义属性和事件使用的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用C#具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
  • 我们知道,当系统控件并不能满足我们的需求时,我们就需要来创建自定义控件,主要有两种方法 (1)引入布局 下面来自定义一个控件,iPhone的标题栏,创建一个标题栏并不是什么难事,加入两个button一个TextView就行...
  • 1.创建自定义控件 2.添加控件,组合成一个新的控件 自定义控件功能:打开一张图片,将图片展示在pictureBox控件中,并将图片的名称、大小、尺寸显示出来 控件如下: pictureBox1:命名为picBox label1~label6 :...
  • CSharp开发自定义控件类库并测试的简单例子 最近想研究一下怎么编写CSharp的自定义控件,在此记录一下学习过程: 首先讲一下我的解决方案工程的组成: 首先打开VS(我的是VS2015)新建一个Windows窗体应用程序,...

    CSharp开发自定义控件类库并测试的简单例子
    最近想研究一下怎么编写CSharp的自定义控件,在此记录一下学习过程:
    首先讲一下我的解决方案工程的组成:
    在这里插入图片描述
    首先打开VS(我的是VS2015)新建一个Windows窗体应用程序,命名为TestCustomCtrl,这是用来测试我们的自定义控件用的。
    然后右击“解决方案TestCustomCtrl”——添加——新建项目——类库,命名为CustomCtrlLib,我们后面的所有自定义控件都将在该类库中新建。
    接下来我们新建一个最简单的自定义控件:
    1.先把CustomCtrlLib中的Class1.cs删除
    2.右击CustomCtrlLib——添加——新建项——用户控件——添加,如下图:
    在这里插入图片描述
    3.然后我们在属性中改变一下这个自定义控件的背景色,如下图:
    在这里插入图片描述

    4.然后我们在TestCustomCtrl项目中使用上面的自定义控件。先右击“CustmCtrlLib”——点击“生成”,然后右击TestCustomCtrl项目中的“引用”——添加引用,如下图:
    在这里插入图片描述
    5.然后在跳出的“引用管理器”中选择“项目”——“解决方案”——勾选“CustomCtrlLib”,如下图:
    在这里插入图片描述
    6.这时候这个自定义的控件库已经引用到TestCustomCtrl项目中了,我们双击一下TestCustomCtrl项目中“Form1.cs”文件,然后点击“工具箱”,可以看到列表中多了“CustomCtrlLib组件”,如下图:
    在这里插入图片描述
    7.这时候把工具箱中的UserControl1拖到Form1中就可以看到效果了,如下图:
    在这里插入图片描述
    8.然后运行一下看看自己的自定义控件:
    在这里插入图片描述

    展开全文
  • 直接上实例:创建自定义标题栏 1.新建一个布局title.xml 2.在activity_main.xml文件中,通过下面这句代码即可引入自定义的布局 <inclued layout= "@layout/title"> 3. 引入布局文件确实解决了代码重复的问题...

    直接上实例:创建自定义标题栏
    1.新建一个布局title.xml
    2.在activity_main.xml文件中,通过下面这句代码即可引入自定义的布局

    <inclued layout= "@layout/title">
    

    3.在这里插入图片描述
    引入布局文件确实解决了代码重复的问题,但是响应事件怎么办呢,这时候就需要用自定义控件来解决
    4.新建TitleLayout继承自LinearLayout,让它称为我们自定义的标题栏控件
    首先w
    首先我们重写了LineraLayout中带有两个参数的构造函数,在布局引入TitleLayout这个控件就会调用这个构造函数。
    6.当自定义控件创建完成之后,我们需要在布局文件中添加这个自定义控件
    在这里插入图片描述
    7.如果我们想要为自定义的控件添加响应事件,那么只需要回去TitleLayout中设置响应事件即可。

    展开全文
  • 我们也可以利用上面的继承结构来创建自定义控件。 新建项目UICustomViews 创建一个自定义的标题栏 一般程序中可能很多活动都需要一个这样的标题栏, 但在每个活动的布局中都编写同样的标题栏代码会导致重复, ...

    教材:第一行代码(第2版)
    在这里插入图片描述
    当系统自带的控件不能满足需求时,
    我们也可以利用上面的继承结构来创建自定义控件。

    新建项目UICustomViews

    创建一个自定义的标题栏
    	一般程序中可能很多活动都需要一个这样的标题栏,
    	但在每个活动的布局中都编写同样的标题栏代码会导致重复,
    	所以可以引入布局。
    
    //创建一个布局title.xml
    
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/title_bg">
    
        <Button
            android:id="@+id/title_back"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_margin="5dp"
            android:background="@drawable/back"
            android:text="Back"
            android:textColor="#8B3626" />
    
        <TextView
            android:id="@+id/title_text"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:layout_gravity="center"
            android:text="Title text"
            android:gravity="center"
            android:textColor="#8B3626"
            android:textSize="24sp" />
    
        <Button
            android:id="@+id/title_edit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_margin="5dp"
            android:background="@drawable/edit"
            android:text="Edit"
            android:textColor="#8B3626" />
    
    </LinearLayout>
    
    //activity_main.xml
    
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        >
    
        <include layout="@layout/title" /> //添加标题栏
    
    </LinearLayout>
    
    //MainActivity
    
    //隐藏系统自带标题栏
    
    package com.example.uicustomviews;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import androidx.appcompat.app.ActionBar;
    //自动生成为import android.app.ActionBar; 报错
    
    import android.app.Activity;
    import android.os.Bundle;
    
    public class MainActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            ActionBar actionbar = getSupportActionBar();
            if(actionbar != null)
                actionbar.hide();
        }
    }
    

    在这里插入图片描述

    为功能相同的控件(比如:back-返回功能)在每个活动中单独编写一次事件注册代码,
    也会导致代码重复,
    所以可以使用自定义控件。

    //新建src/main/java/com.example.uicustomviews/TitleLayout.java类
    //TitleLayout继承自LinearLayout
    
    //TitleLayout.java
    
    public class TitleLayout extends LinearLayout {
        public TitleLayout(Context context, AttributeSet attrs){
            super(context,attrs);
            LayoutInflater.from(context).inflate(R.layout.title,this);
        }
    }
    

    在这里插入图片描述

    //修改activity_main.xml
    
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        >
        
        <com.example.uicustomviews.TitleLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            />
    
    </LinearLayout>
    
    //TitleLayout.java中添加按钮事件
    
    		Button titleBack = (Button) findViewById(R.id.title_back);
            Button titleEdit = (Button) findViewById(R.id.title_edit);
    
            titleBack.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View view) {
                    ((Activity)getContext()).finish();
                }
            });
    
            titleEdit.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View view) {
                    Toast.makeText(getContext(),"You clicked Edit button",Toast.LENGTH_SHORT).show();
                }
            });
    

    在这里插入图片描述

    展开全文
  • 在日常的企业应用中,会有一些共用的自定义控件,例如:新增 保存 修改 删除 打印。。。在很多页面上都可以使用,这时就需要我们一个自定义的控件,网上关于自定义的控件教程比较少,我也是借鉴了很多的教程,写了一...
  • 说明:一组辅助功能,旨在使用WinAPI创建自定义控件。 日期:2014年3月7日 作者:君士坦丁/ ###概括 0x00-GUI初始化 0x01-CreateSimpleWindow 0x02-GetColor 0x03-刷新窗口 0x04-CreateButton 0x05-...
  • 怎样用Qt5创建自定义控件

    千次阅读 2020-02-27 22:42:15
    用户此时当然要改自定义控件里的各种代码的,这里只是为了阐释怎样新建一个自定义控件所以没改。 注意这里会产生两个警告,解决办法见我的另一篇博文https://blog.csdn.net/qq_16597387/article/details/10454...
  • Qt自定义控件

    2018-11-28 16:25:16
    包含一些QT5自定义控件的例子,自定义表盘,自定义进度条等
  • 在Qt设计中UI设计中经常遇到到一些...自定义控件通常用两种方法来是实现:一种是继承基本控件类重新自定义一个新控件类,同时具备父控件的属性;另一种办法是直接定义基于QWidget的类,用重绘的办法实现的自定义控件
  • VS中创建自定义控件

    千次阅读 2019-08-09 21:01:54
    第二步:在同一个解决方案中创建一个服务控件项目 2.1 再次创建一个asp.net web应用程序。如图: 2.2 然后在这个项目下创建一个Web窗体服务器控件 第三步:编辑为我想要的控件 在这个我这个控件为textbox,所以这...
  • C#本身提供了很强大的控件库,但是很多控件库的功能只是一些基本的功能,就比如最简单的按钮,C#提供了最基础的按钮使用方法,但是如果要增加一些功能,比如按钮按下要一个图片,弹起要另一个图片这样的工作。...
  • 本文介绍了如何开发自定义的设计时间扩展。
  • PaintCodeDemo 展示如何使用 PaintCode 创建自定义控件的示例 Xamarin.iOS 项目
  • C# 一些自定义控件

    2017-12-22 14:52:06
    内含一些自定义的C#控件,有demo,有源码,很不错的控件库,虽然不是很多,但是至少提供了一个学习的方法!
  • 在自定义的控件中,通常...1、在自定义控件的类代码中创建一个变量(可以是任何类型根据设计需要) private bool mvalue = false; 2、创建变量对应的属性,在属性上添加黑体部分(属性特性) [Category("数据"), D...
  • 用Duilib开发界面时,很多情况下库自带的控件不满足需求,就需要基于Duilib建立自定义控件(自绘新的控件,或者用来封装win...我简单写一篇博客,把创建自定义控件的完整过程,和一些注意事项说明一下。另外说一...
  • 创建自定义控件 自定义控件代码 其实就是把这段代码加载到了主活动里 inflate(R.layout.title,this)//获取布局 //第一个参数加载布局id 第二个参数父布局 button.setOnClickListener{//操作布局按钮 val ...
  • 百度地图api之创建自定义控件

    千次阅读 2018-12-12 17:44:54
    百度地图api,创建自定义控件 js里边添加控件代码 function addControl(){ function zoomControl(){ this.defaultAnchor = BMAP_ANCHOR_TOP_RIGHT //表示控件定位 右上角 this.defaultOffset = new BMap.Size...
  • 本页内容简介自适应呈现模型创建自定义服务器控件TagKey使用自定义控件创建复合服务器控件创建复合控件添加控件行为回调示例使用设计器小结简介从使用基本的文本编辑器到创作标记页面,Web开发已经经历了一个漫长的...
  • C# VS创建自定义控件流程

    千次阅读 2020-04-08 20:34:14
    winform VS创建自定义控件流程 一、打开VS创建 Windows 窗体控件库 二、打开工具箱,往窗体添加两个控件表示创建的新控件 三、菜单栏选择生成 -> 重新生成解决方法 四、项目的bin目录下的Debug目录下就生成了...
  • Qt自定义控件创建和使用

    千次阅读 2021-03-31 21:36:53
    之前在使用Qt 5.12创建自定义控件时,出现了各种问题,多次重装QtCreator和VS,屡次失败,乃至一度放弃。话说写代码很简单,环境的配置却很难,不知道有多少人在各种开发环境的配置时,被这种挫败感打击而放弃; 不...
  • 一、VC++定义自定义控件与delphi,VB有些差异。 delphi,vb在 file-new-other中建立。vc++在工具栏中就有自定义控件,但必须加入控件类型。 许多书籍都在类向导中建立。我这里介绍的是手动建立,其结果是一样的。 二....
  • React 创建自定义控件

    2015-08-11 10:22:30
    一个简单的React使用示例,使用React创建自定义控件

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 201,245
精华内容 80,498
关键字:

创建自定义控件

友情链接: 8KEY1.rar