小编Jan*_*fer的帖子

获取鼠标光标下的像素颜色 - 快速方式

有没有什么方法可以真正快速地获得鼠标光标下的像素颜色?我有一个鼠标钩,我尝试在鼠标移动期间读取像素颜色。它是一种 ColorPicker

任何使用 getPixel 和 BitBlt 的尝试都非常慢。

更新 - 添加代码

unit Unit1;

{$mode delphi}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls, lclintf, Windows;

type

  { TForm1 }

  TForm1 = class(TForm)
    pnColor: TPanel;
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure ms(var message: tmessage); message WM_USER+1234;
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;
  DC:HDC;

    const WH_MOUSE_LL = 14; //for Lazarus

implementation

{$R *.lfm}

{ TForm1 }

procedure HookMouse(Handle:HWND); stdcall; external 'mhook.dll';
procedure …
Run Code Online (Sandbox Code Playgroud)

winapi freepascal lazarus

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

与ProgressDialog的AsyncTask与方向更改

经过几个绝望的日子,我终于创造了几乎成功的榜样.

目标:在onCreate中我想在AsyncTask中下载和解析XML文件,显示进度对话框,更新UI并关闭对话框.

问题:当方向更改时,Activity重新启动,AsyncTask失去对它的引用.关于它有很多问题和博客.但我无法找出为什么这个特定的解决方案不起作用.或者在这种情况下android如何处理对话框.

状态:当我启动应用程序时一切正常.我可以旋转设备,我可以通过菜单再次手动启动任务.但是在任务完成后我再次更改方向,弹出对话框(如预期的那样),没有其他任何事情发生.没有进度改变,没有对话解雇.AsyncTask正常完成.

代码:

package com.test;

import java.io.*;
import java.net.URL;
import java.net.URLConnection;
import java.util.*;

public class Test extends TabActivity {
DownloadFileAsync task;
ProgressDialog   progressDialog;
static final int PROGRESS_DIALOG = 0;

private static Data      data;


/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {       
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    /* - Run from different locations bug - */
    //http://code.google.com/p/android/issues/detail?id=2373
    if (!isTaskRoot()) {
        final Intent intent = getIntent();
        final String intentAction = intent.getAction();
        if (intent.hasCategory(Intent.CATEGORY_LAUNCHER) …
Run Code Online (Sandbox Code Playgroud)

android progressdialog android-asynctask android-orientation

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

有没有办法像 JAVA Comparable 一样比较两个通用对象?

有没有办法像 JAVA Comparable一样比较两个对象?

val o1: Any
val o2: Any
Run Code Online (Sandbox Code Playgroud)

我知道它们是同一类并实现 JAVA Comparable。如果我将它们转换为 JAVA Comparable,我会收到警告,我应该使用 Kotlin Comparable,但 Kotlin 版本需要在编译时未知的 Type。我所需要的只是这样的:

val result = (o1 as Comparable).compareTo(o2)
Run Code Online (Sandbox Code Playgroud)

kotlin

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