这是我的代码。
我可以缩放图片框,但不能缩放。旋转鼠标滚轮时如何缩放到鼠标点?
变量是:-
private double m_dZoomscale = 1.0; //THIS IS THE ZOOM SCALE TO WHICH EACH OBJECT
//ARE ZOOMED IN THE CANVAS
public static double s_dScrollValue = .01;
//scale factor value for mouse scroll zooming
Run Code Online (Sandbox Code Playgroud)
油漆代码是:-
private void m_Picturebox_Canvas_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
g.ScaleTransform((float)m_dZoomscale, (float)m_dZoomscale);
}
Run Code Online (Sandbox Code Playgroud)
主要代码是:-
protected override void OnMouseWheel(MouseEventArgs mea)
{
m_Picturebox_Canvas.Focus();
if (m_Picturebox_Canvas.Focused == true)
{
if (mea.Delta > 0)
{
ZoomInScroll();
}
else if (mea.Delta < 0)
{
ZoomOutScroll();
}
}
} …Run Code Online (Sandbox Code Playgroud) 我有一个椭圆,中心点在原点(0,0)
double dHalfwidthEllipse = 10;
double dHalfheightEllipse = 20;
double dAngle = 30;//Its in degree
PointF ptfPoint = new PointF();//To be found
PointF ptfOrigin = new PointF(0, 0);//Origin
Run Code Online (Sandbox Code Playgroud)
相对于原点的角度= 30度; 现在如何使用C#获得上述值?
我有2个对象,对象A和对象B.A具有属性颜色和大小,B具有属性颜色,大小和深度.
A和B都继承自C,这是一个抽象类.
如何在运行时将B转换为A?
abstract class C {
}
Class A: C {
int color;
int size;
}
Class B: C {
int color;
int size;
int depth;
}
main() {
//creating object A
A objA = new A();
A.color = 46;
A.size = 90;
//creating object B
B objB = new B();
B.color = 23;
B.size = 10;
B.depth = 78;
//How to do casting
A = B;
}
Run Code Online (Sandbox Code Playgroud) 例如
我目前的代码如下:
List<int> list_iNumbers = new List<int>();
list_iNumbers.Add(34);
list_iNumbers.Add(78);
list_iNumbers.Add(20);
list_iNumbers.Add(10);
list_iNumbers.Add(17);
list_iNumbers.Add(99);
list_iNumbers.Add(101);
list_iNumbers.Add(24);
list_iNumbers.Add(50);
list_iNumbers.Add(13);
List<int> list_iPosition = new List<int>();
list_iPosition.Add(1);
list_iPosition.Add(4);
list_iPosition.Add(5);
int iValueToInsert = 11;
Run Code Online (Sandbox Code Playgroud)
现在如何在这些位置插入并获得正确的结果?
有2个清单
我需要根据list_in对ptdPoints进行排序
我目前的代码如下: -
List<int> list_int = new List<int>() {1,9,3};
List<PointF> ptdPoints= new List<PointF>();
ptdPoints.Add(new PointF(20,10));
ptdPoints.Add(new PointF(10,80));
ptdPoints.Add(new PointF(60,30));
Run Code Online (Sandbox Code Playgroud)
如何根据list_int的升序排序list_int和ptdPoints
这里的结果如下=>
所以我按升序排列list_int,其他索引中的相应值也会发生变化.
任何帮助,将不胜感激.