小编Che*_*eso的帖子

WinForms:如何模拟图像上的按钮行为?

我有一个winforms TabControl的扩展,它在每个选项卡上绘制一个X,以允许用户关闭选项卡.

alt text http://i41.tinypic.com/bhelqp.jpg

与标准相比:

替代文字http://i42.tinypic.com/2zqa2c3.jpg

如何模拟该图像上的按钮外观?我的意思是,当用户点击时,它应该在视觉上表明.按钮使用插入图像执行此操作.对于奖励积分,我也想做悬停部分 - 鼠标悬停时图像将"亮起".

但X不是一个按钮,它不是PictureBox控件.它根本不是一种控制.它刚刚被吸引到那里.

有没有办法在MouseDp上绘制插入边框并在MouseUp上引发?对于"插入"阶段,我会更好地生成另一个图像吗?(另一个用于悬停).

有人这么做过吗?


相关:模拟Winforms按钮点击动画
但是这个问题不同,因为他实际上有一个PictureBox控件.我不.

.net tabcontrol winforms

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

在x64上用于指针减法的正确类型是什么?

我刚刚开始使用x64编译.

我有几个char*,我正在减去它们.通过32位编译,这可以工作:

char * p1 = ....
char * p3 = ... 
int delta = p3 - p1;
Run Code Online (Sandbox Code Playgroud)

但如果我为x64编译,我会收到警告:

 warning C4244: 'initializing' : conversion from '__int64' to 'int', 
      possible loss of data
Run Code Online (Sandbox Code Playgroud)

使用哪种正确的类型来表示两个指针之间的区别,这两个指针在x86和x64编译中都有效?

我知道我可以在x64编译中使用__int64,但是我希望它也适用于x86,我不想#ifdef在这里嵌入它.

64-bit visual-c++

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

使用C#的jQuery easySlider无法在ASP.NET中工作

我无法让jQuery easySlider工作.谁能找到我错的地方?

<%@ Page Title="About  me" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
    CodeFile="About.aspx.cs" Inherits="About" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
<script type="text/javascript" src="Scripts/easySlider1.7.js"></script>
<script type="text/javascript" src="Scripts/jquery-1.7.js" ></script>
<script type="text/javascript">
    $(document).ready(function () {
        $("#slider").easySlider();
    });
</script>
</asp:Content>

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <h2>About me</h2>

    <p> Info on the user logged in.</p>
    <p>Name:</p>
    <p>Student number:</p>
    <p>If information displayed is incorrect, please email with corect details.</p>

    <div id="slider">
        <ul>
            <li><a href="#"><img src="Styles/images/slider/01.jpg" alt="Css Template Preview" /></a></li>
            <li><a href="#"><img src="Styles/images/slider/02.jpg" alt="Css Template Preview" /></a></li>
            <li><a href="#"><img src="Styles/images/slider/03.jpg" alt="Css Template …
Run Code Online (Sandbox Code Playgroud)

c# asp.net jquery

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

Common Lisp有一些功能.我如何写一些或任何elisp?

一个any功能将评估上的序列的元素的函数(或谓词),如果断言返回该序列的任何元件真正返回true.因此

(any `stringp `(42 t "yes" nil))
Run Code Online (Sandbox Code Playgroud)

..将返回非零,并且

(any `stringp `(42 t nil 89))
Run Code Online (Sandbox Code Playgroud)

...将返回零.

我认为someCL模块中有一个功能,但我不想使用它.

使用mapc编写一个简单的实现很容易:

(defun my-any (predicate sequence)
  "Return true if PREDICATE is true of any element of SEQUENCE.
If so, return the first non-nil value returned by PREDICATE.
"
  (let (result)
    (mapc '(lambda (elt)
             (or result
                 (setq result (funcall predicate elt))))
          sequence)
    result))
Run Code Online (Sandbox Code Playgroud)

但是,任何人都可以提供优化或改进吗?是否有更快或更清洁或更惯用的elisp方式来做到这一点?特别是当第一个序列触发时,停止映射序列的最佳方法是什么?我可以"展开"mapc,但这是最好的方法吗?

我想我可以使用catch但实际上可能比它节省的成本更多.

提示?

emacs elisp map

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

HttpClient ReadAsAsync - 完成后做一些事情

我有代码来读取ASP.NET Web API的响应,如下所示:

HttpClient client = new HttpClient();
client.GetAsync(path.ToAbsoluteUrl()).ContinueWith(
                    (requestTask) =>
                    {
                        HttpResponseMessage response = requestTask.Result;
                        response.EnsureSuccessStatusCode();
                        response.Content.ReadAsAsync<DBResult>().ContinueWith(
                                                            (readTask) =>
                                                            {
                                                                result = readTask.Result;
                                                                lblMessage.Text = string.Format("{0} products were uploaded successfully. {1} failed.", result.Success, result.Failed);
                                                            });
                    });
Run Code Online (Sandbox Code Playgroud)

当我得到响应/结果时,我正在尝试显示某种消息.但似乎没什么用 - 我的标签没有更新.

显然,我做错了什么 - 如何在收到回复后向用户显示消息?

TIA

编辑:

如下所述,我宣布:

TaskScheduler scheduler = TaskScheduler.FromCurrentSynchronizationContext();

并传入"调度程序"(尝试使用ContinueWiths),但仍然没有任何效果.实际上,现在我的lblMessage.Text上的断点未到达.

asp.net-web-api dotnet-httpclient

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

Heroku:Twitter附加组件的Apigee

我想在Heroku中使用apigee for twitter附加组件,但是我收到了这条消息

该附加组件仅适用于选定的用户

我该怎么办?

谢谢

PS:这个附加组件是否与Twitter API v1.1一起使用?

twitter heroku apigee

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

如何将祖先复制到后代

假设我有一只动物,现在我想把它变成一只狗.我如何在java中执行此操作?

现在我有一个看起来像的构造函数

public Dog(Animal animal) {
  this.setProperty(animal.getProperty);
  ...
}
Run Code Online (Sandbox Code Playgroud)

虽然这有效,但它很脆弱.还有其他建议吗?

java inheritance clone copy

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

C#类的构造函数顺序:参数化,默认和静态?

假设我有一个包含3个构造函数的类,一个默认(无参数)构造函数,一个参数化构造函数和一个静态构造函数.像这样:

public MyClass()  { ... }
public MyClass(string arg) : this()  { ...  }
static MyClass()  { ... }
Run Code Online (Sandbox Code Playgroud)

假设我调用参数化构造函数,这些构造函数以什么顺序执行?

我认为它是静态的,然后参数化,然后默认.但是......我的经历并不同意.


背景:我有一个应用程序嵌入引用的DLL作为资源.在运行时,应用程序通过注册程序集解析程序

static MyClass()
{
    AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(Resolver);
}
Run Code Online (Sandbox Code Playgroud)

Resolver方法定义如下:

static System.Reflection.Assembly Resolver(object sender, ResolveEventArgs args)
{
    ....
} 
Run Code Online (Sandbox Code Playgroud)

我知道解析器可以按照它选择的任何方式生成装配.在我的应用程序的情况下,它做了一个

Assembly.GetExecutingAssembly().GetManifestResourceStream(name);
Run Code Online (Sandbox Code Playgroud)

其中name是嵌入资源的名称.然后读取该资源的所有字节,并对读取的字节块执行Assembly.Load(byte []).

起初,这可能听起来很奇怪,但它确实有效.

你可能会说,为什么世界上你会嵌入一个集会,而不仅仅是ILMerge? 好问题.我认为我需要嵌入因为嵌入式程序集已签名,而且我没有重新签署合并程序集的密钥.所以我嵌入了.

问题是:假设我在类上声明了一个私有实例成员变量,该变量是嵌入式程序集中定义的类型.在我的情况下,它是一个枚举,我也初始化该枚举的值.

现在,如果静态构造函数已经运行,那么该私有成员上的初始化程序将没有问题.但我看到的是"找不到文件"错误 - 您的基本Fusion错误.

Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'MyApp, Version=1.1.4.1, Culture=neutral, PublicKeyToken=edbe51ad942a3f5c' or one of its dependencies. The system cannot find the …
Run Code Online (Sandbox Code Playgroud)

.net constructor class-design fusion

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

为什么这种涉及隐含泛型类型的静态工厂方法有效?

考虑

public class Tuple<T1, T2>
{
    public Tuple(T1 v1, T2 v2)
    {
        V1 = v1;
        V2 = v2;
    }

    public T1 V1 { get; set; }
    public T2 V2 { get; set; }
}

public static class Tuple
{
    // MAGIC!!
    public static Tuple<T1, T2> New<T1, T2>(T1 v1, T2 v2)
    {
        return new Tuple<T1, T2>(v1, v2);
    }
}
Run Code Online (Sandbox Code Playgroud)

为什么在上面的工作中标有"MAGIC"的部分?它允许语法 Tuple.New(1, "2")而不是new Tuple<int, string>(1, "2"),但......如何以及为什么?

为什么我不需要 Tuple.New<int,string>(1, "2")

c# generics

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

Javascript数据结构

我想知道是否有可能做这样的事情:

if (mb == null || typeof (mb) != "object") {
    var mb = new Object();
}


mb = {
    tests: {
        onAnimals: {
            test: function() {
                return "";
            }
        }
        onHumans: {
            test: function() {
                return "";
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试它时,我可以看到测试,但当我进一步指出时,我无法看到动物/ onHumans.

javascript对我来说还是新手,所以希望你能提供帮助.

javascript class-design

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

是否有一个很好的理由Uni课程仍然使用像modula2这样的"学术"语言?

这个问题促使我问 - 为什么大学仍然使用Modula2这样的语言进行教学,何时可以免费获得改进的现代语言?

例如,是否还有教授帕斯卡的单身人士?我的意思是,30年前它很好,但是......现在呢?为什么?

为什么不Java,C#,Haskell?

相关:还是教导LISP倒退吗?


这是一个重复的问题吗?如果没有,我认为它应该是社区维基话题.

programming-languages modula-2

0
推荐指数
2
解决办法
1164
查看次数