GDI+SDK参考(翻译版本)序言 4目标 4适用范围 4适用读者 4运行环境 4文档组织 4相关主题 4GDI+的安全考虑 6检验构造函数调用成功与否 6分配缓冲区 6错误校验 8线程同步 9相关主题 10关于GDI+ 11GDI+介绍 11GDI+概览 11GDI+的三个组成部分 11基于类的接口架构 12GDI+提供了哪些新东西? 12新特征 12编程模式的改变 15线条、曲线和图形 19矢量图概览 19钢笔、线条和矩形 20椭圆和弧 22多边形 22基数样条 23贝塞尔样条 24路径 25画刷和填充图形 27开放与闭合曲线 29区域 30裁剪 31路径平直化 32线条和曲线的抗锯齿功能 32图象、位图和图元文件 33位图类型 34图元文件 37绘制、定位和复制图片 39裁剪和缩放图象 40坐标系统和转换 42坐标系统类型 42以矩阵来表示转换 44全局和局部转换 48图形容器 51使用GDI+ 56使用入门 56绘制线条 56绘制字符串 58使用钢笔绘制线条和形状 59使用钢笔绘制线条和矩形 59设置钢笔的宽度和对齐方式 60绘制具有线帽的线条 61联接线条 62绘制自定义虚线 62绘制用纹理填充的线条 63使用画笔填充形状 63用纯色填充形状 64用阴影图案填充形状 64用图像纹理填充形状 64在形状中平铺图像 65用渐变色填充形状 68使用图像、位图和图元文件 68加载和显示位图 68加载和显示图元文件 69记录图元文件 69剪裁和缩放图像 71旋转、反射和扭曲图像 72缩放时使用插值模式控制图像质量 73创建缩略图像 75采用高速缓存位图来提高性能 76通过避免自动缩放改善性能 76读取图像元数据 77使用图像编码器和解码器 83列出已安装的编码器 83列出已安装的解码器 84获取解码器的类标识符 86获取编码器的参数列表 88将BMP图像转换为PNG图像 100设定JPEG的压缩等级 101对JPEG图像进行无损变换 102创建和保存多帧图像 105从多帧图像中复制单帧 107Alpha混合线条和填充 109绘制不透明和半透明的线条 109用不透明和半透明的画笔绘制 110使用复合模式控制Alpha混合 111使用颜色矩阵设置图像中的Alpha值 112设置单个象素的alpha值 114使用字体和文本 115构造字体系列和字体 115绘制文本 116格式化文本 117枚举已安装的字体 120创建专用的字体集合 122获取字体规格 126对文本使用消除锯齿效果 130构造并绘制曲线 131绘制基数样条曲线 131绘制贝塞尔样条 133用渐变画刷填充形状 134创建线性渐变 134创建路径渐变 137将Gamma校正应用于渐变 144构造并绘制路径 145使用线条、曲线和形状创建图形 145填充开放式图形 147使用图形容器 147管理Graphics对象的状态 148使用嵌套的Graphics容器 151变换 154使用世界变换 154为什么变换顺序非常重要 155使用区域 156对区域使用点击检测 156对区域使用剪辑 157对图像重新着色 158使用颜色矩阵对单色进行变换 158转换图像颜色 160缩放颜色 161旋转颜色 164剪取颜色 166使用颜色重映射表 168打印 169将GDI+输出至打印机 169显示一个打印对话框 172通过提供打印机句柄优化打印 173附录:GDI+参考 176
2024/10/10 11:31:03 1.75MB GDI+ GDI+中文 GDI+帮助
1
matlab下的幂律拟合函数先构造函数然后验证是否拟合效果好
2024/9/24 13:56:21 11KB matlab 幂律分布
1
C++考试题目:题目:建立一个名为Student的类,该类有以下几个私有成员变量:学生姓名、学号、性别、年龄。
还有以下两个成员函数:一个用于初始化学生姓名、学号、性别和年龄的构造函数,一个用于输出学生信息的函数。
编写一个主函数。
声明一个学学生对象。
然后调用成员函数在屏幕输出学生信息。
编程环境:vs2010,语言:c++属性:控制台应用程序。
2024/9/24 10:55:08 1.97MB C++ student类 构造函数 对象
1
importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjava.sql.*;publicclasssystemextendsJFrame{ JDesktopPanedeskpane=newJDesktopPane();//在窗体里建立虚拟桌 JPanelp=newJPanel();//创建一个面板并实例化 publicsystem(){//构造函数 setTitle("订单管理系统");//设置窗体标题 Containercon=getContentPane(); con.setLayout(newBorderLayout());//创建一个布局 con.add(deskpane,BorderLayout.CENTER);//实例虚拟桌面的布局 Fontf=newFont("新宋体",Font.PLAIN,12); JMenuBarmb=newJMenuBar();//实例化菜单栏 mb.setOpaque(true); setJMenuBar(mb); mb.setOpaque(true); setJMenuBar(mb); JMenusystemM=newJMenu("系统管理"); systemM.setFont(f); mb.add(systemM); JMenuItemland=newJMenuItem("重新登陆"); land.setFont(f); JMenuItemexit=newJMenuItem("退出系统"); exit.setFont(f); systemM.add(land); systemM.add(exit); JMenuuserM=newJMenu("用户管理"); userM.setFont(f); mb.add(userM); JMenuItempassword=newJMenuItem("密码修改"); password.setFont(f); JMenuItemaddDelete=newJMenuItem("添加/删除用户"); addDelete.setFont(f); userM.add(password); userM.add(addDelete); JMenumesM=newJMenu("信息管理"); mesM.setFont(f); mb.add(mesM); JMenuaddM=newJMenu("添加信息"); addM.setFont(f); JMenuviewM=newJMenu("查看信息"); viewM.setFont(f); JMenumodifM=newJMenu("修改信息"); modifM.setFont(f); JMenudeleteM=newJMenu("删除信息"); deleteM.setFont(f); mesM.add(addM); mesM.add(viewM); mesM.add(modifM); mesM.add(deleteM); JMenuItemaddgoods=newJMenuItem("添加商品信息"); addgoods.setFont(f); addM.add(addgoods); JMenuItemaddclient=newJMenuItem("添加客户信息"); addclient.setFont(f); addM.add(addclient); JMenuItemviewgoods=newJMenuItem("查看商品信息"); viewgoods.setFont(f); viewM.add(viewgoods); JMenuItemviewclient=newJMenuItem("查看客户信息"); viewclient.setFont(f); viewM.add(viewclient); JMenuItemmodifgoods=newJMenuItem("修改商品信息"); modifgoods.setFont(f); modifM.add(modifgoods); JMenuItemmodifclie
2024/9/13 6:09:25 163KB 需求分析 代码 数据源
1
运用面向对象方法设计点类和平面图形类(含点类成员),并由后者派生设计圆类(含圆心、半径)、正方形类(含左上角顶点、边长)与矩形类(含左上角顶点、长和宽)、三角形类(含三个顶点);
同时为有关类设计构造函数、成员数据设置/提取操作函数、顶点显示函数及周长与面积计算函数,其中顶点显示函数及周长与面积计算函数在平面图形类中应定义为纯虚函数。
在主函数中,分别创建各类对象,调用和执行相关成员函数,观察并分析程序运行结果。
2024/9/12 8:08:14 2.79MB C++ 平面图形 控制台
1
该控件继承QWidget,实现了左右上下四种形式的坐标轴控件。
可以设置固定间隔或自动选择间隔可以设置最小间隔开放一个槽来动态调整坐标轴的范围处理了边缘刻度的显示/*************************************************************************版权所有(C)2012-2015,liang1057@yahoo.com.cn类声明:坐标轴控件************************************************************************//**@brief坐标轴控件**@details坐标轴控件只有刻度和数字,数字可以隐藏(用来显示其他需要显示的刻度值)*/classuiAxis:publicQWidget{Q_OBJECTpublic:/**@brief坐标轴类型**@details坐标轴类型*/enumAXISTYPE{LEFT_AXIS=0,TOP_AXIS,RIGHT_AXIS,BOTTOM_AXIS};/**@brief构造函数*/uiAxis(AXISTYPEtype=BOTTOM_AXIS,QWidget*parent=0);/**@brief析构函数*/~uiAxis(void);/**@brief设置坐标轴的范围*/voidsetScop(doubleminValue,doublemaxValue);/**@brief获取坐标轴的范围*/voidgetScop(double&minValue,double&maxValue);/**@brief获取坐标轴的范围*/doublegetMinValue();doublegetMaxValue();/**@brief设置坐标轴的类型*/voidsetAxisType(AXISTYPEtype);/**@brief坐标轴的类型*/AXISTYPEgetAxisType();/**@brief设置最小刻度(小刻度的最小间隔)*/voidsetMinInterval(doublevalue);/**@brief设置自动间隔*/voidsetAutoScale(boolval=true);/**@brief设置固定间隔*/voidsetSettedScale(boolval=true);/**@brief设置坐标轴的绘制范围,像素值*/voidsetBoundary(intleft,intright,inttop,intbottom);voidgetBoundary(int&left,int&right,int&top,int&bottom);
2024/8/15 19:23:02 4KB Qt 坐标轴
1
谭浩强-C++程序设计内容目录:第1篇基本知识第1章C++的初步知识*1.1从C到C++*1.2最简单的C++程序1.3C++程序的构成和书写形式1.4C++程序的编写和实现1.5关于C++上机实践第2章数据类型与表达式2.1C++的数据类型2.2常量2.3变量2.4C++的运算符2.5算术运算符与算术表达式2.6赋值运算符与赋值表达式2.7逗号运算符与逗号表达式第2篇面向过程的程序设计第3章程序设计初步3.1面向过程的程序设计和算法3.2C++程序和语句3.3赋值语句3.4C++的输入与输出3.5编写顺序结构的程序3.6关系运算和逻辑运算3.7选择结构和if语句3.8条件运算符和条件表达式3.9多分支选择结构和switch语句3.10编写选择结构的程序3.11循环结构和循环语句3.12循环的嵌套3.13break语句和continue语句3.14编写循环结构的程序第4章函数与预处理4.1概述4.2定义函数的一般形式4.3函数参数和函数的值4.4函数的调用*4.5内置函数*4.6函数的重载*4.7函数模板*4.8有默认参数的函数4.9函数的嵌套调用4.10函数的递归调用4.11局部变量和全局变量4.12变量的存储类别4.13变量属性小结4.14关于变量的声明和定义4.15内部函数和外部函数4.16预处理命令第5章数组5.1数组的概念5.2一维数组的定义和引用5.3二维数组的定义和引用5.4用数组名作函数参数5.5字符数组*5.6C++处理字符串的方法——字符串类与字符串变第6章指针6.1指针的概念6.2变量与指针6.3数组与指针6.4字符串与指针6.5函数与指针6.6返回指针值的函数6.7指针数组和指向指针的指针6.8有关指针的数据类型和指针运算的小结*6.9引用第7章自定义数据类型7.1结构体类型7.2共用体7.3枚举类型7.4用typedef声明类型第3篇基于对象的程序设计第8章类和对象8.1面向对象程序设计方法概述8.2类的声明和对象的定义8.3类的成员函数8.4对象成员的引用8.5类的封装性和信息隐蔽8.6类和对象的简单应用举例第9章关于类和对象的进一步讨论9.1构造函数9.2析构函数9.3调用构造函数和析构函数的顺序9.4对象数组9.5对象指针9.6共用数据的保护9.7对象的动态建立和释放9.8对象的赋值和复制9.9静态成员9.10友元9.11类模板第10章运算符重载10.1什么是运算符重载10.2运算符重载的方法10.3重载运算符的规则10.4运算符重载函数作为类成员函数和友元函数10.5重载双目运算符10.6重载单目运算符10.7重载流插入运算符和流提取运算符10.8不同类型数据间的转换第4篇面向对象的程序设计第11章继承与派生11.1继承与派生的概念11.2派生类的声明方式11.3派生类的构成11.4派生类成员的访问属性11.5派生类的构造函数和析构函数11.6多重继承11.7基类与派生类的转换11.8继承与组合11.9继承在软件开发中的重要意义第12章多态性与虚函数12.1多态性的概念12.2一个典型的例子12.3虚函数12.4纯虚函数与抽象类第13章输入输出流13.1C++的输入和输出13.2标准输出流13.3标准输入流13.4文件操作与文件流13.5字符串流
1
C#科学计算讲义-宋叶志-人民邮电出版社内容概要《C#科学计算讲义》较为详细地介绍了科学计算方法,并对算法给出了源代码。
关于算法部分主要介绍了线性方程组的迭代解法与直接解法、正交变换与最小二乘计算方法、鲁棒估计、随机数的产生、插值法、非线性方程求解、多元非线性最优化算法、微分方程数值方法等内容。
本书还给出了C#程序设计的基本方法,并对科学计算中要用到的矩阵向量类的构造做了详细阐述。
算法的实现本身不限于具体的语言,本书对于算法的描述是较为详细的,所以读者也很容易把算法改用Fortran、MATLAB、C++、Java等语言编程实现。
宋叶志、徐导和何峰编著的《C#科学计算讲义》适合作为大学理工科本科生或研究生计算方法、数值分析课程的教材或参考书。
对于从事相关学科教学的教师,如果不熟悉现代编程语言,也可以选择本书作为工具书。
本书还可以用作科研人员的工程计算工具书与算法集。
另外,在一些需要进行数据处理与分析的公司,如数量金融、统计等行业,也可以选用本书作为培训教材,或直接应用书上的源代码进行软件开发。
书籍目录第1章 C#程序设计基础 1.1 计算机、程序设计与算法 1.1.1 计算机结构 1.1.2 操作系统 1.1.3 机器语言与高级语言 1.1.4 程序设计与算法 1.2 C#历史与概述 1.2.1 C语言:结构化编程语言的高峰 1.2.2 C++语言: 面向对象与大型程序 1.2.3 Java语言:可移植、安全性与Internet 1.2.4 C#:.NET主打语言 1.3 集成开发环境介绍 1.4 面向对象程序设计 1.4.1 封装 1.4.2 多态 1.4.3 继承 1.5 数据类型与运算符 1.5.1 简单数据类型 1.5.2 数组 1.5.3 运算符 1.5.4 赋值运算符 1.6 程序控制结构 1.6.1 顺序结构 1.6.2 分支结构 1.6.3 循环结构 1.6.4 控制结构的嵌套 1.7 类的设计及对象实现 1.7.1 定义类 1.7.2 创建对象 1.7.3 方法 1.7.4 构造函数 1.7.5 析构函数与垃圾回收 1.8 运算符重载及索引器 1.8.1 运算符重载 1.8.2 索引器 1.8.3 面向对象思想在C#程序设计中的重要性 1.9 GUI编程 1.10 本章小结第2章 线性方程组迭代解法 第3章 线性方程组的直接解法第4章 正交变换与最小二乘计算方法第5章 鲁棒估计第6章 随机数第7章 插值法第8章 非线性方程数值解法第9章 非线性最优化第10章 常微分方程(组)的数值方法附录A C# 数值代数类的抽象与设计 附录B 动态链接库与混合编程 B.1 静态链接库与动态链接库 B.2 C#调用Fortran动态链接库范例 B.3 调用可执行函数 附录C Linux下C#开发与跨平台编程介绍 C.1 Mono简介 C.2 Linux下C#IDE开发范例 参考文献 
2024/6/30 17:14:25 57.93MB C# 科学计算 宋叶志 人民邮电
1
变质的变形合同-用于创建变形(即可重新部署)合同的工厂合同。
此创建变质合同或可以使用新代码重新部署到相同地址的合同。
它通过通过CREATE2操作码使用固定的,不确定的初始化代码部署变质协定来实现。
此初始化代码会克隆给定的实现合同,并可以选择在一个操作中将其初始化。
合同变形后,所有现有存储将被删除,任何现有合同代码都将被新实施合同中已部署的合同代码替换。
或者,工厂还可以通过使用中间部署它们来创建利用构造函数的变态契约-否则,可以使用在克隆实例后自动调用初始化函数的参数。
还有一个,它将不执行合同重新部署,从而防止其部署的任何合同的变态(尽管它们仍可以部署自己的变态合同)。
2024/6/22 5:30:35 41KB factory ethereum smart-contracts mutable
1
packageasc;importjava.awt.*;importjavax.swing.*;publicclasscsextendsJFrame{//定义组件JPaneljp1,jp2,jp3;//面板JLabeljlb1,jlb2;//标签JButtonjb1,jb2;//按钮JTextFieldjtf;//文本JPasswordFieldjpf;//密码publicstaticvoidmain(String[]args){cswin=newcs();}//构造函数publiccs(){//创建面板jp1=newJPanel();jp2=newJPanel();jp3=newJPanel();//创建标签jlb1=newJLabel("用户名");jlb2=newJLabel("密码");//创建按钮jb1=newJButton("登录");jb2=newJButton("重置");//创建文本框jtf=newJTextField(10);//创建密码框jpf=newJPasswordField(10);//设置布局管理this.setLayout(newGridLayout(3,1));//网格式布局//加入各个组件jp1.add(jlb1);jp1.add(jtf);jp2.add(jlb2);jp2.add(jpf);jp3.add(jb1);jp3.add(jb2);//加入到JFramethis.add(jp1);this.add(jp2);this.add(jp3);//设置窗体this.setTitle("用户登录");//窗体标签this.setSize(300,150);//窗体大小this.setLocationRelativeTo(null);//在屏幕中间显示(居中显示)this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//退出关闭JFramethis.setVisible(true);//显示窗体//锁定窗体this.setResizable(false);}}
2024/6/21 2:27:16 2KB ..
1
共 65 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡