小编Jor*_*oll的帖子

Python和UDP监听

我有一个应用程序,软件定义无线电,在一个端口上广播UDP数据包,告诉听众已经设置了什么频率和解调模式(等等).

我编写了一个演示python客户端(下面的代码)来监听端口,并将相应数据包中的信息转储到控制台.

这些都在OSX 10.6,Snow Leopard下运行.他们在那里工作.

我的问题是:Python应用程序必须在无线电应用程序之前启动,或者在绑定期间声称端口已在使用(ERRNO 47),我不明白为什么.无线电应用正在广播UDP; 当然,我想容纳多个听众 - 这就是广播的想法,或者至少,所以我想.

所以这里是Python代码(由于堆栈溢出真的很愚蠢"make-it-code"缩进,缩进有点混乱,但我保证你没关系):

#!/usr/bin/python
import select, socket 

# AA7AS - for SdrDx UDP broadcast

# this is a sample python script that captures the UDP messages
# that are coming from SdrDx. SdrDx tells you what frequency and
# mode it has been set to. This, in turn, would be used to tell
# another radio to tune to that frequency and mode.

# UDP packet from SdrDx is zero terminated, but …
Run Code Online (Sandbox Code Playgroud)

python udp

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

MVVM模式的数字文本框

我已经看到了TextBox带有代码的数字的实现WPF.我们如何在MVVM模式中做到这一点?

wpf mvvm mvvm-light

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

WPF DataGrid没有退出编辑模式

我有一个DataGrid显示几行和几列数据,每个都绑定到它自己Property.该DataGrid不是一个TabControl,但每当它生活在窗口关闭并重新打开我得到的错误信息:'DeferRefresh' is not allowed during an AddNew or EditItem transaction. ONLY IF有一个或多个的验证问题DataGrid的细胞.

例如:绑定到DataGrid's 的属性cell是a double,用户输入"hello",当然然后WPF's显示自动红色边框cell.现在,如果用户要关闭窗口,并重新打开它,则会发生错误.

我知道为什么错误被抛出,因为cell它没有离开"编辑模式".

我该如何解决这个错误?

其他说明:

  • 我已经看过这个问题,但这与a DataGrid上有关TabControl(我的不是).
  • 我试图限制用户的输入,以便如果Cell需要a double或者只接受a double,但问题是没有好的方法来限制用户可以插入的小数点(".").我控制用户输入PreviewTextInput,只允许0-9和".".

异常细节(如果这有帮助)

System.InvalidOperationException was unhandled
  Message='DeferRefresh' is not allowed during an AddNew or EditItem transaction.
  Source=PresentationFramework
  StackTrace:
       at System.Windows.Data.CollectionView.DeferRefresh()
       at System.Windows.Controls.ItemCollection.SetCollectionView(CollectionView …
Run Code Online (Sandbox Code Playgroud)

c# wpf datagrid mvvm

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

如何更新matplotlib hexbin图?

我有一个matplotlib hexbin嵌入在GTK.Window图表中的一些数据(x,y).我希望在plot收到新数据时更新(通过UDP).我虽然遇到了一些麻烦.

我可以通过几种不同的方式使它工作,但没有一种是"有效的"(含义 - 重绘plot时间过长).我看了一下这个并尝试在建议的答案之后对我的hexbin进行建模,但根本无法使其工作.我一直收到以下错误:

TypeError: 'PolyCollection' object is not iterable.

我猜测hexbins不能以与标准相同的方式更新plots.

示例代码:

class graph:
    def __init__(self):
        self.window = gtk.Window()
        self.figure = plt.figure()
        self.ax = self.figure.add_subplot(111)
        self.canvas = FigureCanvas(self.figure)
        self.window.add(self.canvas)

        self.graph = None

    def plot(self, xData, yData):
        if len(xData) > 1 and len(yData) > 1:
            self.graph, = self.ax.hexbin(self.xData, self.yData) 
            ###############################################
            ####This is where the code throws the error####

    def update(self, xData, yData):
        self.graph.set_xdata(np.append(self.graph.get_xdata(), xData)) …
Run Code Online (Sandbox Code Playgroud)

python gtk matplotlib

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

控制Python for循环的索引

如何控制python for循环的索引?(或者可以吗?还是应该吗?)

例如:

for i in range(10):
    print i
    i = i + 1
Run Code Online (Sandbox Code Playgroud)

产量:

0
1
2
3
4
5
6
7
8
9
Run Code Online (Sandbox Code Playgroud)

我希望它产生:

0
2
3
4
5
6
7
8
9
10
Run Code Online (Sandbox Code Playgroud)

如果我对这个问题完全不了解,我确实表示歉意,而我的大脑此刻完全让我失望,并且解决方案显而易见。


我为什么要问?

这与问题无关,但与为什么我需要答案有关。

在我正在编写的Python脚本中,我正在执行以下操作:

for i in persons:
    for j in persons[-1(len(persons) - i - 1:]:
        if j.name in i.name:
            #remove j.name
        else: 
            #remove i.name

    #For every person (i), iterate trough every other person (j) after person (i)
    #The reason I ask this question …
Run Code Online (Sandbox Code Playgroud)

python for-loop

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

WPF仅限数字TextBox - 使用事件或命令处理它?

我试图创建一个TextBox只允许数字字符和小数点.我在编写代码时不需要帮助,但是在概念上.我MVVM用来设计WPF应用程序,我不确定是使用事件还是事件命令.

我已经阅读了几个关于这个主题的不同观点:

  • (我发现这有点极端,有些人称之为"适得其反",但它坚持"纯度" MVVM):永远不会有任何代码View.要防止这种情况,请使用MVVM Light Library.简而言之,将事件转换为命令,以便可以控制所有内容ViewModel.
  • (第二个论点并不支持(可能过度)"纯度" MVVM):并非一切都必须在处理中,ViewModel并且可以创建Events来处理某些UI要求.

由于简单性,我更倾向于第二种选择,正如我之前所说,第一种选择似乎有点极端.在我的具体情况下(仅创建一个数字TextBox),大多数人会更喜欢上述选项中的任何一个或我没有发现的选项吗?

wpf mvvm mvvm-light

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

WPF的"漂亮"功能真的很棒吗?还是他们太控制了?

所以我对MVVM很新,我一直在努力解决有关用户输入验证的一些问题.WPF有一些内置功能似乎像"魔术"一样,一般来说,我知道"魔术"并不好.

例如:如果将a绑定TextBox到类型为的属性double并且用户输入"hello" TextBox,则WPF会自动显示红色边框,TextBox通知用户输入无效.

这一切都很好,但看起来确实像"魔术".有经验的开发人员告诉我,类似的WPF和应用程序构建者想要有太多的控制权.他说,在Web开发中,View不知道Property属于什么类型.这对我来说很有意义.所以这引出了我的一般性问题 - WPF View应该了解属性类型吗?- 如果我将属性类型声明为string我可以完全控制视图.而不是必须解决WPF的"智能" TextBox"魔术".

另一种表达我的问题的方法是 - 应该在Model或ViewModel中声明属性类型吗?

我理解,如果您将Model中的Property类型声明为a doublestringViewModel中的一个,则必须在Model中解析它.在我看过的MVVM应用程序的大多数示例中,属性类型在整个应用程序中是相似的,但我认为不明白它正在使用的"哑"视图会好得多.

回到我的例子:如果Property被声明为a,String你可以完全控制输入所需的格式并防止无效输入.这似乎是比信任WPF更好的解决方案TextBox.

wpf mvvm

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

在WPF中使用部分类

在过去的几个月里,我做了很多研究,但还没有真正找到我的问题的好答案:

一些背景信息:我是WPF的新手,并被要求使用它创建一个项目.我自己学习了大部分概念,但我正在努力解决一个主要问题.MainWindow课堂上的代码太多了.

代码太多的原因:代码太多,因为我的UI元素的所有事件都必须在这一个类中进行控制.

现在我刚刚发现了部分类的使用.所以我计划将事件拆分成一个单独的文件.我只是想知道是否有更好的方法来减少MainWindow班级的规模?我无法找到在类之间传递控件的方法,因为我知道在类或方法之间传递TextBoxesListBoxes等等是不好的.(但我确实知道你可以传递诸如textBox1.Text或类似属性之类的参数,但这并不能解决我的问题.

c# wpf partial-classes

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

标签 统计

wpf ×5

mvvm ×4

python ×3

c# ×2

mvvm-light ×2

datagrid ×1

for-loop ×1

gtk ×1

matplotlib ×1

partial-classes ×1

udp ×1