问题列表 - 第6242页

是否有跨平台的python低级API来捕获或生成键盘事件?

我正在尝试编写一个跨平台的python程序,它将在后台运行,监视所有键盘事件,当它看到一些特定的快捷方式时,它会生成一个或多个自己的键盘事件.例如,将Ctrl- @映射到"my.email@address"可能很方便,因此每次某个程序询问我的电子邮件地址时,我只需要输入Ctrl- @即可.

我知道这些程序已经存在,我正在重新发明轮子......但我的目标只是了解有关低级键盘API的更多信息.此外,这个问题的答案可能对其他程序员有用,例如,如果他们想要启动需要密码的SSH连接,而不使用pexpect.

谢谢你的帮助.

注意:有一个类似的问题,但它仅限于Windows平台,并且不需要python.我正在寻找跨平台的python api.还有其他与键盘事件有关的问题,但显然他们对系统范围的键盘事件不感兴趣,只是特定于应用程序的键盘快捷键.

编辑:我应该在这里增加一个声明:我不是想写一个键盘记录.如果我需要一个键盘记录器,无论如何我都可以从网上下载一个.;-)

python cross-platform keyboard-events low-level-api

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

在Javascript中使用动态参数调用动态函数

我正在寻找一个关于这个的伎俩.我知道如何在Javascript中调用动态的任意函数,传递特定的参数,如下所示:

function mainfunc(func, par1, par2){
    window[func](par1, par2);
}

function calledfunc(par1, par2){
    // Do stuff here
}

mainfunc('calledfunc', 'hello', 'bye');
Run Code Online (Sandbox Code Playgroud)

我知道如何在mainfunc中使用arguments []集合传递可选的无限参数,但是,我无法想象如何向mainfunc发送任意数量的参数以动态发送到calledfunc ; 我怎么能完成这样的事情,但有任意数量的可选参数(不使用丑陋的if-else)?:

function mainfunc(func){
    if(arguments.length == 3)
        window[func](arguments[1], arguments[2]);
    else if(arguments.length == 4)
        window[func](arguments[1], arguments[2], arguments[3]);
    else if(arguments.length == 5)
        window[func](arguments[1], arguments[2], arguments[3], arguments[4]);
}

function calledfunc1(par1, par2){
    // Do stuff here
}

function calledfunc2(par1, par2, par3){
    // Do stuff here
}

mainfunc('calledfunc1', 'hello', 'bye');
mainfunc('calledfunc2', 'hello', 'bye', 'goodbye');
Run Code Online (Sandbox Code Playgroud)

javascript function

149
推荐指数
5
解决办法
20万
查看次数

使用extjs在网格中显示图像

我是extjs的新手.我想为每个网格元素显示图标图像.你能帮助我吗?

我从xml文件获取图像路径.

我的代码如下.我在这里显示图像路径.

我必须通过显示图像来替换它.

Ext.onReady(function(){

      var store = new Ext.data.Store({
        url: 'new_frm.xml',

               reader: new Ext.data.XmlReader({
               record: 'message',
               fields: [{name: 'first'},{name: 'last'},{name: 'company'},{name: 'email'},{name: 'gender'},{name: 'form-file'},{name: 'state'},{name: 'Live'},{name: 'content'}]
           })
    });

      var grid = new Ext.grid.GridPanel({
        store: store,
        columns: [
            {header: "First Name", width: 120, dataIndex: 'first', sortable: true},
            {header: "Last Name", width: 180, dataIndex: 'last', sortable: true},
            {header: "Company", width: 115, dataIndex: 'company', sortable: true},          
            {header: "Email", width: 100, dataIndex: 'email', sortable: true},
            {header: "Gender", width: 100, dataIndex: 'gender', sortable: …
Run Code Online (Sandbox Code Playgroud)

grid icons extjs image

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

用于文件操作的C#线程

我必须能够保存文件,不幸的是它可能会非常大,因此保存它可能需要几分钟.因为我需要从GUI线程执行此操作,所以我不想阻止GUI执行.我正在考虑在单独的线程上尝试保存操作,以允许主GUI线程继续执行.

是否有一个很好的(简单)方法来生成一个新线程,保存文件,并销毁线程没有任何讨厌的副作用?!

必须说我从来没有必须使用线程所以我是一个完整的新手!任何和所有的帮助将不胜感激!

c# io multithreading

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

如何在 ASP.NET 项目中设置全局 DateTime 格式?

我有一台带有德语窗口的服务器,但 DateTime 值以英语格式存储在 mysql 服务器上。我如何强制每个 DateTime.ToString() 方法(如 DateTime.Now.ToString())默认输出“英语”日期时间?

c# asp.net localization

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

自定义html帮助程序:使用"using"语句支持创建帮助程序

我正在编写我的第一个asp.net mvc应用程序,我对自定义Html帮助程序有疑问:

要制作表格,您可以使用:

<% using (Html.BeginForm()) {%>
   *stuff here*
<% } %>
Run Code Online (Sandbox Code Playgroud)

我想用自定义HTML帮助器做类似的事情.换句话说,我想改变:

Html.BeginTr();
Html.Td(day.Description);
Html.EndTr();
Run Code Online (Sandbox Code Playgroud)

成:

using Html.BeginTr(){
    Html.Td(day.Description);
}
Run Code Online (Sandbox Code Playgroud)

这可能吗?

.net asp.net-mvc html-helper

39
推荐指数
3
解决办法
9421
查看次数

如何在iPhone上录制除Linear PCM之外的其他内容

我很难在iPhone上录制除线性PCM以外的其他东西:-(我发现的样本(SDK的SpeakHere,Zdziarski和Sadun的书以及在trailsinthesand.com上的那些)都使用线性PCM但我' d喜欢常用的压缩格式(没有ima4或其他名称......).

我只是无法弄清楚如何调整要使用的示例代码,例如AAC,MP3或AMR.任何有关如何做的建议和提示都非常感谢!

(顺便说一句,我认为由于许可问题,MP3编码器和AMR编码器都不可用,但AAC确实存在,或者???)

编辑/更新:我在Apple的"iPhone应用程序编程指南",2009-01-06,第137页,部分:录制音频中偶然发现了以下文字:
"您可以录制"首选音频格式中列出的任何格式的音频iPhone OS"(第140页)"和第140页上的首选音频格式为:"对于一次播放一个声音时的压缩音频,以及当您不需要与iPod应用程序同时播放音频时,请使用AAC打包在CAF或m4a文件中的格式."
因此,我将其解释为一个明确的迹象表明,以mAC文件记录的AAC格式录制音频确实,不仅可能,甚至更可取,这正是我想要的.但是,我仍然无法做到这一点?!

谢谢,/约翰

iphone core-audio

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

使用CFQUERYPARAM在SQL中指定表/列名

我需要动态构造一组 JOIN 语句,其中表名和列名是从另一个 ColdFusion 查询传入的。将字符串值传递到语句中时,CFQUERYPARAM 在其周围添加单引号 - 这是 CFQUERYPARAM 要点的一部分。鉴于这会破坏 SQL 语句,在这种情况下不使用 CFQUERYPARAM 而是确保传入的查询被清理是否可以接受,或者是否有办法允许使用 CFQUERYPARAM?(我可以使用 Fusebox 中的电路/熔丝权限锁定这些代码片段。)

谢谢。

sql coldfusion cfqueryparam

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

C将十六进制转换为十进制格式

使用gcc在linux上编译.

我想将其转换为十六进制.10这将是一个.我设法做到这一点将下面的代码.

unsigned int index = 10;
char index_buff[5] = {0};
sprintf(index_buff, "0x%x", index);
data_t.un32Index = port_buff;
Run Code Online (Sandbox Code Playgroud)

但是,问题是我需要将它分配给一个结构,我需要分配的元素是unsigned int类型.

但这有效:

data_t.un32index = 0xa;
Run Code Online (Sandbox Code Playgroud)

但是,我的示例代码不起作用,因为它认为我试图从字符串转换为unsigned int.

我试过这个,但这也失败了

data_t.un32index = (unsigned int) *index_buff;
Run Code Online (Sandbox Code Playgroud)

非常感谢任何建议,

c hex decimal

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

如何使用LINQ-to-SQL回滚对WPF DataGrid控件的更改?

我能够设置WPF Datagrid,通过linq-to-sql显示Northwind数据库表,并处理TheDataGrid_RowEditEnding事件,以便保存回数据库.

但是,当CustomerID被更改时,它会从我处理的数据库中获取错误,但我现在如何(1)回滚Datagrid控件或(2)从数据库视图LINQ-to-SQL重新获取原始数据(通过LINQ我在下面做的反馈似乎有某种缓存,它不刷新):

<Grid DockPanel.Dock="Bottom">
    <toolkit:DataGrid x:Name="TheDataGrid" 
                      AutoGenerateColumns="True"
                      RowEditEnding="TheDataGrid_RowEditEnding"/>
</Grid>



private void TheDataGrid_RowEditEnding(object sender, Microsoft.Windows.Controls.DataGridRowEditEndingEventArgs e)
{
    try
    {
        _db.SubmitChanges();
    }
    catch (Exception ex)
    {
        RefreshData();
        Message.Text = ex.Message;
    }
}

public void RefreshData()
{
    var customers = from c in _db.Customers
                    select c;
    TheDataGrid.ItemsSource = customers;
}
Run Code Online (Sandbox Code Playgroud)

回答:

谢谢Denis,我用你的建议得到了我的意思:

private void TheDataGrid_RowEditEnding(object sender, Microsoft.Windows.Controls.DataGridRowEditEndingEventArgs e)
{
    try
    {
        _db.SubmitChanges();
    }
    catch (Exception ex)
    {
        Customer customer = e.Row.Item as Customer;
        _db.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, customer);
        Message.Text = ex.Message;
    }
}
Run Code Online (Sandbox Code Playgroud)

linq wpfdatagrid

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