我正在创建一个简单的应用程序,使用GMap在c#上处理地图。NET控件。所以,我的问题是:我想用另一种形式制作多边形、多段线和标记。我的代码是:
第一种形式(MapModule):
GMapOverlay polygonOverlay = new GMapOverlay("polygons");
GMapOverlay markersOverlay = new GMapOverlay("markers");
GMapOverlay polylineOverlay = new GMapOverlay("polylines");
第二种形式(新文件):
public MapModule _MapModule;
public Newfile(MapModule MapModule)
{
InitializeComponent();
_MapModule = MapModule;
}
private void addpolygon_Click(object sender, EventArgs e)
{
GMapPolygon polygon = new GMapPolygon(points, "What you need");
_MapModule.polylineOverlay.Polygons.Add(polygon);
}
输出是:
谷歌地图。“MapModule.polylineOverlay”由于其保护级别而不可访问
我想,这一定很简单,但我对编程完全陌生。
第一个快速而不明智选择是将该对象公开:
public GMapOverlay polylineOverlay = new GMapOverlay("polylines");
但这不是一个好的实践,因为这样做会破坏封装原则,并失去对对象发生什么的控制。如果该变量在某个点上有垃圾,您将很难知道为什么会发生这种情况。
另一种方法是创建一个 getter,这样就可以公开访问引用,尽管没有修改。
private GMapOverlay polylineOverlay = new GMapOverlay("polylines");
public GMapOverlay PolylineOverlay
{
get
{
return this.polylineOverlay;
}
}
包含类可以访问两者,但其他类只能访问公共属性。
此外,如果您不想在首次使用之前创建此对象,可以这样做:
private GMapOverlay polylineOverlay;
public GMapOverlay PolylineOverlay
{
get
{
if (this.polylineOverlay == null)
this.polylineOverlay = new GMapOverlay("polylines")
return this.polylineOverlay;
}
}
尽管在这种情况下,你应该在你的类中使用公共属性,或者在其他地方实例化它。
问题内容: 我正在尝试开发在线酒店预订系统。我有一个主类,它从用户那里获取输入信息,例如他们的姓名,他们的付款信息和其他数据字段,并使用该信息作为对象。我有另一个名为的类,其中包含每个对象的列表。我遇到的问题是我无法找出一种将对象添加到对象列表中的方法。这是一些代码: 我不知道如何获取新对象作为类中方法的参数传递。我只是束手无策,希望有人能帮助我慢跑。 谢谢你的帮助。 问题答案: 让makeRes
使用Inspect.exe我可以看到应用程序组件的树结构中存在一个按钮,但我找不到获取该按钮句柄的方法。这是控件的Inspect.exe输出: 这个按钮的特殊之处在于它没有hwnd值。(hwnd: 0x0)。这是我试图获得对该按钮的引用的内容: 在本例中,hwnd变量是包含按钮的应用程序主窗口的句柄。 在阅读FindWindowEx的留档时,看起来似乎有多种方法可以使用不同的参数,我觉得我已经尝试
这是我的代码: 我所要做的就是使esc按钮与backspace按钮完全相同。所以我想删除
所以假设我有一个“开”和一个“关”按钮。当我按下打开按钮时,我希望打开按钮隐藏自己,关闭按钮显示出来,反之亦然。 一个人怎么能这么做?
本文向大家介绍javafx 创建一个按钮,包括了javafx 创建一个按钮的使用技巧和注意事项,需要的朋友参考一下 示例 创建aButton很简单: 这将创建一个新的Button,内部没有任何文本或图形。 如果要Button使用文本创建一个,只需使用带有Stringas参数的构造函数(用于设置textProperty的Button): 如果您想创建一个Button内部带有图形或其他图形的Node,