我的问题是我想在多个地方处理命令.例如,我有自定义的UserControl,其中Button被绑定到某个命令.我在该控件中有一个命令绑定,但我在一个使用该控件的Window中也有一个命令绑定.
我的目标是在控件内执行一些操作,同时不中断窗口中命令的处理.
我尝试过Executed和PreviewExecuted事件,但没有运气.然后我在一个窗口中模拟了问题(下面发布的代码).
<Window x:Class="CommandingEvents.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:CommandingEvents="clr-namespace:CommandingEvents"
Title="Window1" Height="300" Width="300">
<Window.CommandBindings>
<CommandBinding
Command="{x:Static CommandingEvents:Window1.Connect}"
Executed="CommandBindingWindow_Executed"
PreviewExecuted="CommandBindingWindow_PreviewExecuted"/>
</Window.CommandBindings>
<Grid>
<Grid.CommandBindings>
<CommandBinding
Command="{x:Static CommandingEvents:Window1.Connect}"
Executed="CommandBindingGrid_Executed"
PreviewExecuted="CommandBindingGrid_PreviewExecuted" />
</Grid.CommandBindings>
<Button Command="{x:Static CommandingEvents:Window1.Connect}"
CommandTarget="{Binding RelativeSource={RelativeSource Self}}"
Content="Test" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Grid>
Run Code Online (Sandbox Code Playgroud)
namespace CommandingEvents
{
public partial class Window1
{
public static readonly RoutedUICommand Connect = new
RoutedUICommand("Connect", "Connect", typeof(Window1));
public Window1()
{
InitializeComponent();
}
private void CommandBindingWindow_Executed(object sender, ExecutedRoutedEventArgs e)
{
Console.WriteLine("CommandBindingWindow_Executed");
e.Handled = false;
}
private void CommandBindingGrid_Executed(object sender, ExecutedRoutedEventArgs e)
{ …Run Code Online (Sandbox Code Playgroud) 我目前正在开发一个应用程序,负责计算锯齿状阵列的随机排列.
目前,应用程序中的大部分时间都花费在每次迭代中复制数组(总共100万次迭代).在我当前的系统上,整个过程需要50秒才能完成,其中39秒用于克隆阵列.
我的数组克隆例程如下:
public static int[][] CopyArray(this int[][] source)
{
int[][] destination = new int[source.Length][];
// For each Row
for (int y = 0; y < source.Length; y++)
{
// Initialize Array
destination[y] = new int[source[y].Length];
// For each Column
for (int x = 0; x < destination[y].Length; x++)
{
destination[y][x] = source[y][x];
}
}
return destination;
}
Run Code Online (Sandbox Code Playgroud)
有没有办法,安全或不安全,以达到与上述相同的效果,更快?
我发现它hg annotate在跟踪代码来源方面非常有用,但我发现在 emacs 的 vc 模式中,vc-annotate......不太好。这是一个片段:
297 Wed Oct 06 15:21:30 2010 -0600 aws/lib/survey/creator/dbTemplates/web/views.sql: $$,$$
687 Mon Dec 20 10:25:41 2010 -0700 aws/lib/survey/creator/dbTemplates/web/views.sql: GRANT SELECT ON survey_length_view TO reportuser,surveyuser,sampleserver,sampleloader;
687 Mon Dec 20 10:25:41 2010 -0700 aws/lib/survey/creator/dbTemplates/web/views.sql: GRANT ALL ON survey_length_view TO adminuser, GROUP staff;
297 Wed Oct 06 15:21:30 2010 -0600 aws/lib/survey/creator/dbTemplates/web/views.sql: $$);
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,那里有很多序言,以及相当多的冗余信息。我不需要知道完整的 ISO 时间戳(无论如何,大多数时候),并且文件的路径被我选择注释时位于文件中的事实所覆盖。我确实需要知道是谁做出了改变,但这里显然不存在这一点。
我该如何修复这个注释工具,使其变得有用?
我想在灰色和白色之间交替作为背景,从我的JTextPane的一行到下一行.我尝试通过重载paintComponent()方法并根据组件高度和字体大小手动绘制背景来做到这一点,但我没有成功.
任何提示?
我正在为一个网站开发JavaScript,用Firefox开发,当我刷新页面时,我看不到我的变化.JavaScript文件位于外部文件中.我重新加载并刷新了几次页面,但旧的JavaScript文件仍然被缓存.最后,我直接在浏览器中加载了JavaScript页面,看到了旧脚本,点击"重新加载",看到了我的更改.
如何清除缓存的外部JavaScript文件?当我告诉客户端进行了更改时,我也需要知道这一点,以便他们不会看到旧的缓存功能.
这可能吗?当我把char作为类型时,我得到奇怪的错误消息:
inline bool operator==(const char *str1, const char *str2){
// ...
}
Run Code Online (Sandbox Code Playgroud)
错误信息:error C2803: 'operator ==' must have at least one formal parameter of class type...我根本不明白.
我在想是否可以直接比较像:
const char *str1 = "something";
const char *str2 = "something else";
const char str3[] = "lol"; // not sure if this is same as above
Run Code Online (Sandbox Code Playgroud)
然后比较:
if(str1 == str2){
// ...
}
Run Code Online (Sandbox Code Playgroud)
等等
但我也希望它能与之合作:
char *str = new char[100];
Run Code Online (Sandbox Code Playgroud)
和:
char *str = (char *)malloc(100);
Run Code Online (Sandbox Code Playgroud)
我假设我使用这种方式的每个char数组都会以NULL字符结束,所以检查应该是可能的,但我知道它可能是不安全的等等.我只是想知道这是否可行,以及如何.
我正在尝试在两个图像上应用混合滤镜(在本例中为HardLight).基础Android库不支持HardLight,因此,我在每个像素上手动完成.第一次运行正在运行,但速度低于恒星.从基础500x500图像和500x500过滤器生成500x500图像的过程太长了.这段代码也用于生成缩略图(72x72),它与应用程序的核心不可分割.我喜欢一些关于如何提高速度的建议和/或提示.
如果假设两个图像都不具有alpha,那么可以获得巨大的收益,这很好.注意:BlendMode和alpha是示例中未使用的值(BlendMode将选择混合类型,在本例中为硬编码HardLight).
public Bitmap blendedBitmap(Bitmap source, Bitmap layer, BlendMode blendMode, float alpha) {
Bitmap base = source.copy(Config.ARGB_8888, true);
Bitmap blend = layer.copy(Config.ARGB_8888, false);
IntBuffer buffBase = IntBuffer.allocate(base.getWidth() * base.getHeight());
base.copyPixelsToBuffer(buffBase);
buffBase.rewind();
IntBuffer buffBlend = IntBuffer.allocate(blend.getWidth() * blend.getHeight());
blend.copyPixelsToBuffer(buffBlend);
buffBlend.rewind();
IntBuffer buffOut = IntBuffer.allocate(base.getWidth() * base.getHeight());
buffOut.rewind();
while (buffOut.position() < buffOut.limit()) {
int filterInt = buffBlend.get();
int srcInt = buffBase.get();
int redValueFilter = Color.red(filterInt);
int greenValueFilter = Color.green(filterInt);
int blueValueFilter = Color.blue(filterInt);
int redValueSrc = Color.red(srcInt);
int greenValueSrc = …Run Code Online (Sandbox Code Playgroud) 我有一个32位整数值,我想将其转换为两个十进制值.来自5个最低有效位的一个值和来自其余位(27位)的一个十进制值.
我怎么用Java做到这一点?
我能想到的唯一解决方案是这样的:
int i = 1073326082;
String binaryString = Integer.toBinaryString(i);
int fiveLeastSigValue = Integer.parseInt(binaryString.substring(27), 2));
int theRest = Integer.parseInt(binaryString.substring(0, 27), 2));
但我确定有一些更有效的方法来做到这一点.有任何想法吗?
我已经写了包含两个指针类,一个是char* color_和一个在vertexesset* vertex_那里vertexesset是一类我创建.在我开始写的destractor中
delete [] color_;
delete [] vertex_;
Run Code Online (Sandbox Code Playgroud)
当它来到析构函数时,它给了我一个分段错误.
然后我将析构函数更改为:
delete [] color_;
delete vertex_;
Run Code Online (Sandbox Code Playgroud)
现在它工作正常.两者有什么区别?
我有以下内容:
from django.contrib.auth.models import User
class ClientDetails(models.Model):
created_by = models.ForeignKey(User)
...
Run Code Online (Sandbox Code Playgroud)
如何created_by对当前登录的用户进行默认设置?
(我想这样做,所以我可以在管理视图中隐藏它,但也因为当我保存一个实例时我不想每次都填充它)
c++ ×2
java ×2
android ×1
arrays ×1
c# ×1
caching ×1
decimal ×1
django ×1
django-admin ×1
emacs ×1
firefox ×1
javascript ×1
jtextfield ×1
mercurial ×1
performance ×1
python ×1
swing ×1
visual-c++ ×1
wpf ×1