小编Kei*_*h M的帖子

C#Hook全局键盘事件 - .net 4.0

作为我正在研究的媒体播放器应用程序的一部分,我想要连接媒体控制键的全局按键(播放,跳过,跳回等).

我一直在寻找大约2个小时试图寻找解决方案 - 但我找不到一个有效的方法.我找到了几个关于同一件事的Stackoverflow答案,但没有一个有效.

我尝试了MouseKeyHookNuGet包,但它永远不会触发事件.我也试过了这个FMUtils.KeyboardHook包,但是同样的事情发生了,除了它在控制台中打印出它在启动后立即关闭了钩子 - 我不知道为什么,查看源代码后的事件.

我试图得到这个代码项目项目http://www.codeproject.com/Articles/18638/Using-Window-Messages-to-Implement-Global-System-H但我甚至无法运行演示,这两个演示只是抛出了我无法追查的奇怪错误.

我的问题是,在我的Winforms应用程序没有聚焦时,我可以用来捕获键盘按下的.net 4.0中的键盘按键的工作方式是什么?

.net c# hook winforms

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

如何平滑SVG路径的边缘

谁能帮我?我想弄清楚如何为这个 SVG 路径(目前用 Raphael 绘制它)获得漂亮、平滑的边缘。这是问题的 CodePen 模型(您可能需要向下滚动才能看到窗口中的对角线 - 它与顶部有点偏移)。

http://codepen.io/anon/pen/qbxYOg

<DOCTYPE html>
<body>
<div style="width:3484px; height:2000px;">
    <svg style="width:100%; height:100%;">
            <path fill="#fe0000" stroke="#fe0000" d="M606.182,649.872L739.73,670.2349999999999M743.215,670.366C742.902,669.307,741.7900000000001,668.702,740.73,669.015C739.6700000000001,669.33,739.066,670.442,739.38,671.501C739.694,672.5609999999999,740.806,673.165,741.865,672.851C742.925,672.538,743.53,671.425,743.215,670.366ZM594.333,649L463.09799999999996,628.047M459.614,627.881C459.917,628.943,461.02299999999997,629.559,462.085,629.256C463.14799999999997,628.953,463.763,627.845,463.46,626.784C463.156,625.721,462.04999999999995,625.106,460.988,625.409C459.927,625.713,459.311,626.819,459.614,627.881Z" style="transform: scale(.75); fill: red; stroke: red; stroke-width: 4px"></path>
        </svg>
    </div>
</body>
</html>  
Run Code Online (Sandbox Code Playgroud)

基本上问题是线条看起来很锯齿,没有平滑/抗锯齿,我需要能够将这个 SVG 路径从 100% 缩放比例缩放到 50% 缩放比例以用于交互式地图。缩小它会使边缘看起来锯齿状,但我只注意到对角线上的线条有这个问题......

有人能帮我解决这个问题吗?

谢谢一堆!

html svg antialiasing

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

JavaScript 替换不删除回车

我有一个从 csv 文件生成的 json 对象:

{"FID":["FID"],"the_geom":["the_geom"],"X":["X"],"Y":["Y"],"ROW":["ROW"],"COL":["COL"],"EMH":["EMH"],"B":["B_SURF","B_SUB1","B_SUB2"],"BP_CA":["BP_CA_SUR","BP_CA_SUB1","BP_CA_SUB2"],"BP_K":["BP_K_SURF","BP_K_SUB1","BP_K_SUB2"],"BP_MG"["BP_MG_SUR","BP_MG_SUB1","BP_MG_SUB2"],"BP_NA":["BP_NA_SUR","BP_NA_SUB1","BP_NA_SUB2"],"CA"["CA_SURF","CA_SUB1","CA_SUB2"],"CAMG":["CAMG_SURF","CAMG_SUB1","CAMG_SUB2"],"CEC"["CEC_SURF","CEC_SUB1","CEC_SUB2"],"CLAY":["CLAY_SURF","CLAY_SUB1","CLAY_SUB2"],"CU"["CU_SURF","CU_SUB1","CU_SUB2"],"DPRR_SUMM":["DPRR_SUMM"],"DRAIN_SUMM"["DRAIN_SUMM"],"FE":["FE_SURF","FE_SUB1","FE_SUB2"],"K"["K_SURF","K_SUB1","K_SUB2"],"KMG":["KMG_SURF","KMG_SUB1","KMG_SUB2"],"MG"["MG_SURF","MG_SUB1","MG_SUB2"],"MN":["MN_SURF","MN_SUB1","MN_SUB2"],"NA":["NA_SURF","NA_SUB1","NA_SUB2"],"OM":["OM_SURF","OM_SUB1","OM_SUB2"],"P"["P_SURF","P_SUB1","P_SUB2"],"PAVL"["PAVL_SURF","PAVL_SUB1","PAVL_SUB2"],"PAW24_SUMM":["PAW24_SUMM"],"PAW30_SUMM"["PAW30_SUMM"],"PAW36_SUMM":["PAW36_SUMM"],"PAW42_SUMM":["PAW42_SUMM"],"PAW48_SUMM":["PAW48_SUMM"],"PH":["PH_SURF","PH_SUB1","PH_SUB2"],"RZFC_SUMM":["RZFC_SUMM"],"RZKUSAT_SU"["RZKUSAT_SU"],"RZPAW_SUMM":["RZPAW_SUMM"],"RZPWP_SUMM"["RZPWP_SUMM"],"RZSAT_SUMM":["RZSAT_SUMM"],"S":["S_SURF","S_SUB1","S_SUB2"],"SAND":["SAND_SURF","SAND_SUB1","SAND_SUB2"],"TEX"["TEX_SURF","TEX_SUB1","TEX_SUB2"],"THICK"["THICK_SURF","THICK_SUB1","THICK_SUB2"],"TIP":["TIP_SURF","TIP_SUB1","TIP_SUB2"],"ZN":["ZN_SURF","ZN_SUB1","ZN_SUB2"],"EMV"["EMV"],"ASP":["ASP"],"DEM":["DEM"],"SLOPE\r":["SLOPE\r"]}
Run Code Online (Sandbox Code Playgroud)

最后,slope 对象的名称中有一个回车(它是从 csv 转换中继承过来的)

我需要从对象中删除那个回车,因为它会弄乱解析对象的其他一些脚本。

我尝试通过以下方式对其进行测试:

console.log("Without carrage return: " + JSON.stringify(jsonObject).replace(/[\n\r]/g, ''));
Run Code Online (Sandbox Code Playgroud)

但是当我打印它时,它仍然包含回车符。

我可能在这里做了一些愚蠢的事情,我只是太累了,我没有注意到。

任何帮助表示赞赏,谢谢!

javascript csv json

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

获取枚举实例的名称

说我有这个枚举:

public enum MyEnum{
    ValueOne = 1,
    ValueTwo = 2,
    ValueThree = 3
}
Run Code Online (Sandbox Code Playgroud)

然后这个字段/变量:

public MyEnum myEnumInstance = MyEnum.ValueTwo;
Run Code Online (Sandbox Code Playgroud)

我需要得到namemyEnumInstance通过反射从另一个类

我试过:

myClassInstance.GetType().GetField("myEnumInstance").GetValue(myClassInstance)
Run Code Online (Sandbox Code Playgroud)

ValueOne无论myEnumInstance设置为什么,它始终返回。

如何通过反射获取枚举字段的字符串值/名称?

c# reflection enums

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

Nodejs解析min和max值返回错误的值

我正在使用csv-parser来解析我拥有的csv文件.然后,当它解析每一行时,我正在检查行中的每个值以获得最小值和最大值.

我的问题是我的最大值在COL和ROW列中保持为99.当他们的最大行数约为200行时,300行为col.我不知道那里发生了什么,据我所知,我的方法应该有效.

这是我的相关代码:

var mins = {}
var maxs = {}
function loadCSV(finishedCallback) {
    console.log("Loading csv...");
    fs.createReadStream(__dirname + '/data.csv')
    .pipe(stream)
    .on('data', function (data) {
        for (var k in data) {
              if (data.hasOwnProperty(k)) {
                  if (mins[k] == undefined)
                      mins[k] = data[k];
                  if (maxs[k] == undefined)
                      maxs[k] = data[k];

                  if (mins[k] > data[k])
                      mins[k] = data[k];
                  if (maxs[k] < data[k])
                      maxs[k] = data[k];

              }
          }
      }).on('finish', function () {
          console.log("Finished reading csv!")
          finishedCallback();
          console.log("Maxs: " + JSON.stringify(maxs));
          console.log("Mins: " + …
Run Code Online (Sandbox Code Playgroud)

csv node.js

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

标签 统计

c# ×2

csv ×2

.net ×1

antialiasing ×1

enums ×1

hook ×1

html ×1

javascript ×1

json ×1

node.js ×1

reflection ×1

svg ×1

winforms ×1