小编w5m*_*w5m的帖子

如何添加计算器以开始菜单搜索?

我想制作一个计算器并将其添加到Windows 7开始菜单中,该菜单可以在搜索文本框中计算函数.例如,我在搜索文本框中写"2*2 =",它显示"2*2 = 4".

我不知道怎么能这样做:(

Microsoft有没有这方面的API?

c# c++ windows winapi calculator

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

优雅的方式返回两个字符串的较长时间

我正在尝试编写一个返回两个字符串中较长字符的函数.到目前为止,这就是我所拥有的:

maxString :: String -> String -> String
maxString a b
    | (length a) > (length b) = a
    | otherwise = b
Run Code Online (Sandbox Code Playgroud)

这有效,但我想知道是否有更优雅的方式来写这个.注意:这两个参数不能在列表中.它们必须是单独的参数以允许currying.

思考?

haskell

6
推荐指数
4
解决办法
500
查看次数

WPF 中的屏幕截图不包含所有 UI 更新

我使用的代码这样做在WPF应用程序屏幕截图。简而言之:

var drawingvisual = new DrawingVisual();
using( DrawingContext context = drawingvisual.RenderOpen() )
{
  context.DrawRectangle( new VisualBrush( fooElement ), null, new Rect( fooElementSize ) );
  context.Close();
}
var r = new RenderTargetBitmap( ... );
r.Render( drawingvisual );
SaveBitmapToFile( r, .... );
Run Code Online (Sandbox Code Playgroud)

该原理工作得很好,例如在单击鼠标时调用时,但我在以编程方式调用它时遇到了问题。流程是:

  • 后台线程想要更​​新 UI 并使用 Application.Current.Dispatcher.Invoke
  • 后台线程做其他事情(这只需要一些毫秒)
  • 后台线程向它刚刚更新的 UI 的同一部分发出命令,再次使用 Application.Current.Dispatcher.Invoke

这在我的开发机器上工作正常,但在某些用户的机器上,这会导致保存的图像不包含所有更新。因此,例如,当 TextBlock 具有文本“running”并且上面的第一步将其设置为空字符串时,屏幕截图仍显示 TextBlock 的“running”。或者,如果第一步包括用一堆元素填充 Canvas,屏幕截图只是不包括它们。当要渲染的元素隐藏在其他窗口等后面时,情况也会变得更糟。

考虑到这一点,似乎关键问题是 WPF 使用单独的渲染线程,并且只有当该线程完成其工作时,UI 才会真正绘制并准备好捕获。四处搜索会产生一些点击,甚至一些“解决方案”围绕......

Application.Current.Dispatcher.BeginInvoke( DispatcherPriority.ApplicationIdle,
  new Action( () => { } ) ).Wait();
Run Code Online (Sandbox Code Playgroud)

...但据我所知,这只是等到 UI 线程空闲,这并不能保证渲染线程已完成更新我想要捕获的 UI 部分?无论如何,在捕获代码之前在后台线程中插入这一行没有任何区别。有时似乎有效的方法只是将后台线程阻塞 100 …

c# wpf screenshot

6
推荐指数
0
解决办法
236
查看次数

如何在FireMonkey FM2中使用多个窗口

我知道我可能会遗漏一些东西,但我无法理解.我刚刚创建了一个包含2个表单(Form1,Form2)的测试应用程序.我在OnClick事件处理程序中使用以下代码向Form1添加了一个按钮:

 Application.CreateForm(TForm2,Form2);
 Form2.Show;
Run Code Online (Sandbox Code Playgroud)

当我单击按钮时,会显示第二个表单,但是如果我单击Form1,即使它将属性TopMost设置为true,也无法将它带到前面.

我错过了什么?我该如何解决?我需要显示一些必须始终位于顶部的子表单和主表单.

delphi delphi-xe3 firemonkey-fm2

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

table-cell自动换行不使用斜杠

我试图将文本包装在固定的布局中,但当文本包含斜杠时它不起作用.

这可以修复而不从Javascript(纯CSS)插入空格?

的jsfiddle:

http://jsfiddle.net/HgBhk/1/

Not working:
<div style="display:table; width:170px; background-color:cyan;">
    <div style="display:table-row">
        <div style="display:table-cell;word-wrap: break-word;">abfdbfdbfdb/dfbfdbdfbfbf/bdffbdbfdfbddfbdfbdfb</div>
        <div style="display:table-cell; width:34px;  background-color:red;">xxxxx</div>        
    </div>
</div>

</br>
Working:
<div style="display:table; width:170px; background-color:cyan;">
    <div style="display:table-row">
        <div style="display:table-cell;word-wrap: break-word;">abfdbfdbfdb dfbfdbdfbfbf bdffbdbfdfbddfbdfbdfb</div>
        <div style="display:table-cell; width:34px;  background-color:red;">xxxxx</div>        
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

html css word-wrap

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

在FireMonkey中针对XSD验证XML文件

我正在开发一个跨平台的应用程序(适用于Windows,Mac等)以及32位和64位计算机.我有很多XML文件需要针对他们的XSD进行验证.

在Delphi XE3中有没有办法做到这一点?

我尝试过DTD验证,但我总是遇到"DTD禁止"错误.我也尝试过很多网站上提到的解决方案来解决这个错误,但我没有成功.

提前致谢.

以下是我用过的代码......

function TForm2.ValidateXML(const xmlFile : TFileName) : boolean;
 var
 xmlDoc: TXMLDocument;
begin
result := false;
  xmlDoc := TXMLDocument.Create(nil) ;
  try
    xmlDoc.ParseOptions := [poResolveExternals, poValidateOnParse];
   try
      xmlDoc.LoadFromFile(xmlFile) ;
     xmlDoc.Active := true; //this will validate
     result := true;
   except
     on EX : EDOMParseError do
     begin
     ShowMessage('Invalid XML: ' + Ex.Message) ;
   end;
   end;
 finally
   xmlDoc := nil;
 end;
end;
Run Code Online (Sandbox Code Playgroud)

xml delphi xml-validation xsd-validation firemonkey

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

如果发生NULL,则拒绝行的条款

理论问题......

当触发下面给出的一组查询时...

Create table Temp1(C1 varchar(2))
Create table Temp2(C1 varchar(2))
insert into Temp1 Values('A'),(NULL),('B')
insert into Temp2 Values('B'),(NULL),('C'),(NULL)

select *from Temp1 A,Temp2 B
where A.C1 <> B.C1
Run Code Online (Sandbox Code Playgroud)

...给...

实际结果

A.C1 <> B.C1Where条款中使用过.


但我希望......

在此输入图像描述

要获得预期结果作为输出,我需要ISNULL(A.C1,'') <> ISNULL(B.C1,'')在该Where子句中使用.

我的问题是为什么我需要ISNULL每次都按预期使用输出,因为NULL它不等于任何字符串数据.

sql sql-server null isnull sql-server-2008

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

我可以重写 AuthenticatesUsers login() 方法来实现涉及调用此 Laravel 应用程序中的 REST Web 服务的自定义登录吗?

我是PHPLaravel新手,遇到以下问题。

我知道 Laravel 提供了一个现成的登录系统,使用以下语句创建:

php artisan make:auth
Run Code Online (Sandbox Code Playgroud)

问题是这个系统直接与数据库交互。

我的情况有所不同,因为我的 Laravel 应用程序仅实现了前端。所有业务逻辑均由公开 REST Web 服务的 Java 后端应用程序处理。

基本上 Laravel 前端应用程序是这样的:

1)显示登录表单(用户名和密码)的视图

2) 一个控制器类,其中包含一个方法,该方法接收先前表单的提交,然后调用后端应用程序的 REST Web 服务(发送一个具有包含插入的用户名和密码的授权标头的请求)。

后端应用程序将返回(到前面的 Laravel 控制器方法)一个包含用户信息作为响应的JSON对象,如下所示(如果用户被授权)...

{
  "userName": "Painkiller",
  "email": "painkiller@gmail.com",
  "enabled": true
}
Run Code Online (Sandbox Code Playgroud)

...或者,在用户未经授权的情况下,类似这样的事情...

{
  "timestamp": 1485183649134,
  "status": 401,
  "error": "Unauthorized",
  "message": "Credenziali non valide",
  "path": "/Extranet/login"
}
Run Code Online (Sandbox Code Playgroud)

我最初的想法是编写一个执行这些操作的自定义控制器:

  1. 控制器处理登录表单提交(包含用户输入的凭据)。
  2. 控制器调用我的后端 Web 服务并获取 JSON 对象,如果 JSON 对象代表授权用户,则将其转换为代表用户的 PHP 模型对象。
  3. 控制器将此模型对象放入会话中,并重定向到下一个用户页面,在该页面中可以从会话中检索此信息。

我不太热衷于前端开发,但我认为它应该可以工作,但是......我正在远离 Laravel 架构和 Laravel 逻辑。 …

php laravel laravel-5 laravel-authorization

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

在 MySQL 中为不断增长的表创建汇总表的最佳实践

我有一张桌子叫 transactions有大约 2000 万条记录。该表每秒增长。

我计算用户当前余额:

SELECT sum(`amount`) FROM `transactions` WHERE `user_id` = 1000;
Run Code Online (Sandbox Code Playgroud)

我在我的 Web 应用程序的顶部栏中显示用户当前余额,用户可以看到他/她有多少余额!

显然,每次用户浏览我的网页应用时,都必须执行上述查询来计算当前用户余额!

我想创建一个汇总表来获取当前用户余额而不查询 transactions表上大约 2000 万条记录!

请注意,在我们的工作流程中,一个用户可能同时有多个事务(一个用户甚至可能在一秒钟内有多个事务)是如此普遍。

我认为我们在这里有两种方法:

第一种方法

创建具有一对一关系的汇总表,如下所示:

ID  |  user_id  |  current_balance
1   |  1000     |      8590
2   |  1001     |      235
3   |  1002     |      3780
... |  ...      |      ...
Run Code Online (Sandbox Code Playgroud)

并且每次将新记录插入到transactions表中时,我们都会触发一个存储过程来更新current_balance汇总表中的用户。

我不知道这种方法是否会破坏 MySQL 的一致性!

第二种方法

创建具有一对多关系的汇总表,如下所示:

ID  |  user_id  |  amount
1   |  1000     |   8590    <--- it's the initial user balance
2   | …
Run Code Online (Sandbox Code Playgroud)

mysql sql database database-design

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

将这两个SQL语句合并为一个

将这两个SQL语句合并为一个的最佳方法是什么?我尝试使用union,但似乎无处可去.

select id as id from likes where type=1;

select sum(votes) as votes from likes where parent=id;
Run Code Online (Sandbox Code Playgroud)

这是likes表格:

id  type  parent  country  votes
 1     1       0       US      0
 2     2       1       US      6 // This +
19     3       1       US      3 // This
 3     3       2       US      3
 7     3       2       US      3
 4    10       3       US      1
 5    10       3       US      1
 6    10       3       US      1
10    10       7       US      1
 9    10       7       US      1 …
Run Code Online (Sandbox Code Playgroud)

php mysql sql

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