小编Dom*_*c K的帖子

XNA中基于平铺的冲突

我在XNA游戏中绘制了瓷砖并加载了我的角色.然而,我的角色不会移动 - 地图会移动 - 这会给它带来运动的幻觉.现在我想知道如何实际测试它们的碰撞.我的意思是,碰撞代码在哪里,我如何让所有瓷砖代表"一件大事"?

c# xna collision-detection

5
推荐指数
1
解决办法
7305
查看次数

在XNA中每次单击鼠标/按键增加一次

这一直困扰着我 - 当我使用下面的代码来增加每次鼠标点击的选择时: if (m.LeftButton == ButtonState.Pressed) currentSelection++; 然后currentSelection增加了一吨,因为这个代码在我的Update()函数中并且按照设计运行每一帧因此增加了currentSelection .您几乎没有机会快速单击和释放以防止currentSelection增加多个.

现在我的问题是我应该做什么,所以每当我点击鼠标一次,它只会增加currentSelection一次,直到我再次点击下来.

c# mouse xna

4
推荐指数
1
解决办法
2674
查看次数

以编程方式向文本块添加一行

我知道如何通过调用将控件添加到画布/网格/布局canvas.Childern.Add().但是,当我想在文本块中嵌入某些东西时,我似乎无法找到它的方法.一个文本块不包含Add方法或任何东西,所以我有点迷失.

我试图变成C#的XAML是:

<TextBlock x:Name="textBlock">
    <Line X1="0" Y1="0" X2="100" Y2="0" Stroke="Black" StrokeThickness="4" x:Name="line1"/>
    <TextBlock Text="Hello there!" VerticalAlignment="Center" HorizontalAlignment="Center" x:Name="innerTextBlock" />
    <Line X1="0" Y1="0" X2="100" Y2="0" Stroke="Black" StrokeThickness="4" x:Name="line2"/>
</TextBlock>
Run Code Online (Sandbox Code Playgroud)

编辑:我认为最好的方法(除了答案)是简单地创建一个WPF用户控件并引用它.

c# wpf

4
推荐指数
1
解决办法
1万
查看次数

跟踪Python中的数据类型

所以我希望这是一个有效的问题......我最近(今天实际上)决定学习脚本语言,所以我选择了Python.在浏览代码时,我感到不知所措,我很快意识到原因是我不知道数据类型的转换和内容是什么.

我的问题是:是否存在跟踪数据类型的常规?我来自更多的C背景,所以我发现这很令人困惑.有小费吗?

python types

3
推荐指数
1
解决办法
649
查看次数

如何使这种方法更通用?

我有这个名为LoadToDictionary的方法.它接受字典和文件路径.目前,它看起来像这样: void LoadToDictionary(Dictionary<string, string> dict, string filePath.然后在里面,它会有很多代码将filePath中文件的内容提取到字典中.我想让它更通用,所以它可以,比如说,用一个带有int的字典,以及改变方法中的解析代码的能力.我应该标记此方法,然后覆盖它吗?还有其他方法吗?

c#

3
推荐指数
1
解决办法
433
查看次数

项目欧拉9了解

这个问题说明:

毕达哥拉斯三元组是一组三个自然数,abc,为此,

a 2 + b 2 = c 2

例如,3 2 + 4 2 = 9 + 16 = 25 = 5 2.

恰好存在一个毕达哥拉斯三元组,其中a + b + c = 1000.找到产品abc.

我不确定它试图问你什么.我们是否试图找到然后将这些数字插入?a2 + b2 = c2a + b + c = 1000

math pythagorean

2
推荐指数
2
解决办法
2227
查看次数

在WPF中绘制和删除形状

在GDI +/WinForms中,我可以在Click()事件中使用图形对象:

AddPoint(p); //Add Point contains some code to make sure there is only 3 dots
foreach (Point p in PointList) {
    DrawRectangle(p);
}
Invalidate();
Run Code Online (Sandbox Code Playgroud)

如果我在WPF中尝试类似的东西,它将不会清理我创建的点(我猜是因为WPF的工作原理).这意味着如果我检查确保一次只有三个点,并弹出最旧的点为新的点腾出空间,绘制的矩形仍然存在.

所以问题是,如何在WPF中创建允许我的东西

  • 在Point处绘制一个矩形
  • 超过3后,从WPF画布中删除矩形/点

c# wpf

2
推荐指数
1
解决办法
8312
查看次数

确保WPF中的ActualWidth不等于0

所以我读过它ActualWidth可能等于0,直到满载为止.我添加了它的事件处理程序,以确保它已完全加载:

text.AddHandler(TextBlock.LoadedEvent, new RoutedEventHandler(textBlock_Loaded));
Run Code Online (Sandbox Code Playgroud)

在这种情况textBlock_Loaded下,我有:

TextBlock tb = sender as TextBlock;
textBlockWidth = tb.ActualWidth;
Run Code Online (Sandbox Code Playgroud)

我需要textBlockWidth在main方法中使用变量,但每次我在我的Main方法中写入textBlockWidth的值时,我得到0.

所以这个问题是,ActualWidth在执行我的操作之前,如何确保不是0?由于WPF是事件驱动的,有没有一种方法可以在完成时触发某些方法,而不是之前?否则,它将返回0.

c# wpf actualwidth

1
推荐指数
1
解决办法
3877
查看次数

Parsing text file for hexadecimal content

I have this text file that contains approximately 22 000 lines, with each line looking like this:

12A4 (Text)

So it's in the format 4-letter/number (Hexdecimal) and then text. Sometimes there is more than one value in text, separated by a comma: A34d (Text, Optional)

Is there any efficient way to search for the Hex and then return the first text in the parentheses? Would it be much more effective if I stored this data in SQLite?

c# regex parsing

1
推荐指数
1
解决办法
480
查看次数

玩家是否在基于图块的游戏中移动或使用图块?

我不确定这个问题是否适合,但是我想知道基于平铺的游戏,当玩家移动(并且玩家停留在同一个地方)时,牌块"移动"或者玩家是否移动(而瓷砖留在同一个地方)?

language-agnostic

0
推荐指数
1
解决办法
459
查看次数