这里的等比例适用的是在主窗体中加载了多个子窗体,或者一个主程序引用了另外一个子程序dll这样等比例缩放,也并不是实际意义上的等比例,而是相当于重新加载子窗体,但子窗体里面的数据不能变化。
主窗体和子窗体加载这种就不介绍,直接介绍主程序加载子程序的dll这种,主窗体与子窗体与其类似。
先建立一个主程序,主程序就当做一个壳,里面简单放几个容器即可,我这里放一个panel,panel的Dock设置为Fill。
再建立一个子程序,子程序可以建立个类库程序,生成出来就是个dll,子程序可以随便加点控件进去,主要是为了让主程序调用加载进主程序,load事件中将窗口最大化。为了实现所谓的等比例缩放,子窗体中的控件Dock事件修改,以及使用Anchor进行锚定,子窗体这里使用单例模式加载。
public partial class SubForm : Form
{
public static SubForm subForm;
public static SubForm GetInstance()
{
if(subForm == null || subForm.IsDisposed)
{
subForm = new SubForm();
}
return subForm;
}
private SubForm()
{
InitializeComponent();
}
private void SubForm_Load(object sender, EventArgs e)
{
this.WindowState = FormWindowState.Maximized;
}
}
生成子程序,然后将子程序中的dll放入主程序的bin目录下,然后在主程序的load事件中加载子程序:
private void Form1_Load(object sender, EventArgs e)
{
SubForm subForm = SubForm.GetInstance();
subForm.FormBorderStyle = FormBorderStyle.None;
subForm.TopLevel = false;
subForm.Parent = null;
subForm.Parent = panel1;
subForm.Dock = DockStyle.Fill;
subForm.Show();
}
前面在主程序窗口中加了panel容器,要实现等比缩放,则在panel的sizeChanged事件中再加载子程序即可:
private void panel1_SizeChanged(object sender, EventArgs e)
{
SubForm subForm = SubForm.GetInstance();
subForm.FormBorderStyle = FormBorderStyle.None;
subForm.TopLevel = false;
subForm.Parent = null;
subForm.Parent = panel1;
subForm.Dock = DockStyle.Fill;
subForm.Show();
}
启动程序,便可以实现等比缩放,应该还有其它方法,但目前此方法已经能使用,暂未研究其它方法。
这里博主为了偷懒,就没有使用mybatis以及前端页面了,纯后台代码,测试工具类是否可行一、项目树状图二、测试类Cs.java - - - 主方法类package com.export; import java.util.List;import java.util.Map; import javax.swing.JFileChooser;impor...
一,AFL简介AFL(American Fuzzy Lop)是一款基于覆盖引导(Coverage-guided)的模糊测试工具,它通过记录输入样本的代码覆盖率,从而调整输入样本以提高覆盖率,增加发现漏洞的概率。①从源码编译程序时进行插桩,以记录代码覆盖率(Code Coverage);②选择一些输入文件,作为初始测试集加入输入队列(queue);③将队列中的文件按一定的策略进行“突变”;④如果经过变异文件更新了覆盖范围,则将其保留添加到队列中;⑤上述过程会一直循环进行,期间触发了crash的
(1)vscode在调试python文件时提示如下信息:conda : 无法将“conda”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。解决办法:没有添加系统变量,所以系统根本识别不了conda命令,找不到位置。添加以下系统变量即可正常运行:添加对应Anaconda环境变量到用户变量中:(以自己的安装路径为准)D:\AnacondaD:\Anaconda\ScriptsD:\Anaconda\Library\bin
现在的比赛,想要拿到一个好的名次,就一定要进行模型融合,这里总结一下三种基础的模型: - lightgbm:由于现在的比赛数据越来越大,想要获得一个比较高的预测精度,同时又要减少内存占用以及提升训练速度,lightgbm是一个非常不错的选择,其可达到与xgboost相似的预测效果。 - xgboost:在lightgbm出来之前,是打比赛的不二之选,现在由于需要做模型融合以提高预测精度,所以也...
介绍两种快速通视域分析方法PDERL和XPDERL,计算精度和速度都是顶级水平的。
// ADC GPIO 宏定义#define RHEOSTAT_ADC_GPIO_PORT GPIOB#define RHEOSTAT_ADC_GPIO_PIN GPIO_Pin_0#define RHEOSTAT_ADC_GPIO_CLK RCC_AHB1Periph_GPIOB// ADC 序号宏定义#define RHEOSTAT_ADC ADC1#define RHEOSTAT_ADC_CLK RCC_APB2Peri.
原文链接:https://blog.csdn.net/lyxleft/article/details/94405668不得不说,IEEE的latex模板真是太娇贵了,排版图片花了一天,期间各种报错、对第三方宏包限制和冲突,有些简单的功能研究了许久才搞定,而且网上的博文、教程抄来抄去,很多不使用。google到国外一些网站查了一些答案,结合亲身实践,记录在这里。问题1:插入单栏/跨栏图片i...
Linux NIC Bonding(Team)mode=6 多网卡高可用实战
点击蓝色“架构文摘”关注我哟加个“星标”,每天上午 09:25,干货推送!来源:blog.csdn.net/qq_30285985/article/details/112849366前言项...
本文接上两篇文章,当本地环境的anaconda、cuda、cudnn环境部署好之后就可以开始本篇文章了。HyperLPR简介HyperLPR是一个基于深度学习的高性能中文车牌识别开源项目,github地址是 https://github.com/zeusees/HyperLPR,由python语言编写,同时还支持Linux、Android、iOS、Windows等各主流平台。它拥有不错的识别率,目前已经支持的车牌类型包括单行蓝牌单行黄牌新能源车牌白色警用车牌使馆/港澳车牌教练车牌Hyp
#include <iostream>#include <string.h>#include <stdio.h>#include <algorithm>using namespace std;int main(){ string str,s,x; cin>>str; int n,flag; cin>>flag>>n; if(flag==0) transf..
上文中咱们简单提到了JDK9中Flow接口中的静态内部类实现了响应式流的JAVA API,并且提供了一个一个Publisher的实现类SubmissionPublisher。本文将先梳理一下接口中具体的处理流程,然后再以几个调用者的例子来帮助大家理解。JDK9中的实现再放上一下上文中的响应式流的交互流程:订阅者向发布者发送订阅请求。发布者根据订阅请求生成令牌发送给订阅者。订阅者根据令牌向发布者发送请求N个数据。发送者根据订阅者的请求数量返回M(M<=N)个数据重复3,4数据发送完毕后