小编Whi*_*ler的帖子

两个TrackBar镜子

我想知道如何在trackbar1.position的相反方向上制作我的第二个trackbar.position镜像.例如.范围从1到100.

所以什么时候TrackBar1.Position := 2,然后trackbar2.Position := 99 无论轨道轨道走哪条路,我都想反映相反的方向.

到目前为止,我的代码是:(对使用密钥不感兴趣),只是鼠标交互.

Direction : string; 
Skip : boolean;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
if TrackBar1.Position = TrackBar2.Position then
begin
if Direction = 'up' then   TrackBar2.Position := TrackBar2.Position + 1;
if Direction = 'down' then TrackBar2.Position := TrackBar2.Position - 1;
skip := true;
end;


if TrackBar1.Position < TrackBar2.Position then
begin 
if skip = false then
begin
TrackBar2.Position := TrackBar2.Position - 1;
Direction := 'down';
end;
end
else
begin
if skip = false then …
Run Code Online (Sandbox Code Playgroud)

delphi pascal trackbar

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

来自盗版的Android代码混淆和安全的Android应用程序

目前我是android开发的新手..我需要开发一个安全的Android应用程序,以便我可以从getteg盗版保存它.

为了应用程序的安全性,我在J2ME中使用了RMS.在J2ME中我使用以下步骤:

  1. 生成一个序列号(一些随机数)
  2. 在rms中保存该数字,在下次启动应用程序时在屏幕上显示相同的序列号并要求用户输入有效的激活码然后如果用户输入正确的激活码,则应用程序激活并且flag设置为true并且我将此标志值保存在其他RMS
  3. 如果标志值为真,则在再次启动应用程序时向用户显示主屏幕,否则显示激活页面.

我想在android中实现这个概念.请指导我如何做.或者告诉我,如果有任何机构知道更好的方法在android中这样做.

其次,我想在释放应用程序之前对apk文件进行模糊处理.之后我发现可以使用proguard完成2天.但是我没有得到如何模糊代码.请指导并帮助我对这两个问题进行排序.

谢谢

security obfuscation android rms

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

Delphi TFrame创建/销毁

如何创建(当我想要显示它)并在主TForm上销毁(当我想隐藏它时)帧?帧'align = alClient.

我试过这个:

表格:

unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, uFrame1, uFrame2;

type
  TFormMain = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    f1: TFrame1;
    f2: TFrame2;
  end;

var
  FormMain: TFormMain;

implementation

{$R *.dfm}

procedure TFormMain.FormCreate(Sender: TObject);
begin
  f1 := TFrame1.Create(Self);
  f1.Parent := Self;
end;

end.
Run Code Online (Sandbox Code Playgroud)

第一帧:

unit uFrame1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type
  TFrame1 = class(TFrame) …
Run Code Online (Sandbox Code Playgroud)

delphi freepascal frame lazarus

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

如何在OSX上使用FireMonkey获取当前修改器状态?

使用Delphi for Windows,我通常使用以下代码:

function isCtrlDown : Boolean;
var
  ksCurrent : TKeyboardState;
begin
  GetKeyboardState(ksCurrent);
  Result := ((ksCurrent[VK_CONTROL] and 128) <> 0);
end;
Run Code Online (Sandbox Code Playgroud)

如何在Mac OSX上使用FireMonkey实现此目的?

我发现了这个,但我不知道如何使用FireMonkey/Delphi(使用,......)来管理它:

void PlatformKeyboardEvent::getCurrentModifierState(bool& shiftKey, bool& ctrlKey, bool& altKey, bool& metaKey)
{
    UInt32 currentModifiers = GetCurrentKeyModifiers();
    shiftKey = currentModifiers & ::shiftKey;
    ctrlKey = currentModifiers & ::controlKey;
    altKey = currentModifiers & ::optionKey;
    metaKey = currentModifiers & ::cmdKey;
}
Run Code Online (Sandbox Code Playgroud)

我还在调查......现在,我发现这个单位有关键事件 ...... unit Macapi.AppKit;

delphi macos keyevent delphi-xe2 firemonkey

5
推荐指数
2
解决办法
1094
查看次数

比较JPEG图像的最快解决方案是什么?(忽略元数据,只是"像素")

当我搜索单词"JPEG"和"元数据"时,我有许多答案来操纵元数据......这是我想要的相反......; o)

我写了一个函数,它完全像我想要的那样...(如果图像相似,只有元数据改变与否,函数返回True;如果至少有一个像素改变,则返回False)但是,我想改进表现......

瓶颈是 bmp.Assign(jpg);

function CompareImages(fnFrom, fnTo: TFileName): Boolean;
var
  j1, j2: TJpegImage;
  b1, b2: TBitmap;
  s1, s2: TMemoryStream;
begin
  Result := False;
sw1.Start;
  j1 := TJpegImage.Create;
  j2 := TJpegImage.Create;
sw1.Stop;
sw2.Start;
  s1 := TMemoryStream.Create;
  s2 := TMemoryStream.Create;
sw2.Stop;
//sw3.Start;
  b1 := TBitmap.Create;
  b2 := TBitmap.Create;
//sw3.Stop;
  try
  sw1.Start;
    j1.LoadFromFile(fnFrom);
    j2.LoadFromFile(fnTo);
  sw1.Stop;

            // the very long part...
            sw3.Start;
              b1.Assign(j1);
              b2.Assign(j2);
            sw3.Stop;


  sw4.Start;
    b1.SaveToStream(s1);
    b2.SaveToStream(s2);
  sw4.Stop;
  sw2.Start;
    s1.Position := 0;
    s2.Position := 0;
  sw2.Stop;
  sw5.Start;
    Result …
Run Code Online (Sandbox Code Playgroud)

delphi comparison jpeg

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

E1012常量表达式违反了子范围; 为什么它适用于变量?

程序Project1;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils;

var
  ints: array[1..2] of Integer = (0,0);
  i   : Integer;

begin
  ints[5] := 10;    // doesn't compile
  i := 5;
  ints[i] := 10;    // Seems to works
  Writeln(ints[i]); // and even display the value
  Readln;
end.
Run Code Online (Sandbox Code Playgroud)

我已经设置了数组的绑定ints.

通常情况下,我检查Low(ints),并High(ints)尝试设置值有界阵列...但我一直在寻找另一块之前的代码,我发现我可以在外面用指数的边界,它不会引发任何异常...

我想知道它为什么会起作用,后果是什么?(例如,如果这部分内存没有保留,我可以破坏它,...)

我已经搜索了其他问题,但没有找到好的问题...如果它存在,请不要犹豫,将链接关闭并关闭此问题,谢谢.

arrays delphi

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

Delphi Chromium - 当用户点击网页中的按钮时,在Delphi应用程序中启动命令

我在Delphi应用程序中使用Chromium组件.

我想要以下行为:

当用户单击网页中的特定按钮时,Delphi应用程序("容器")必须执行命令(使用...启动外部可执行文件).

可能吗 ?

delphi button hyperlink tchromium

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

php正则表达式.仅在第一个单词后面有空格的字母

什么是允许字母和空格的php正则表达式.但只有在第一个单词之后的空格?

谢谢

php regex

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

FireMonkey:如何将下一个控件集中在vkReturn上?

经典的VCL问题 ......但是如何在FireMonkey中做同样的事情

我有几个TControl可以专注的标准......

例如,在某些情况下,TEdit如果按下按钮,我想转到下一个可聚焦控件return key

我尝试了不同的方法,但没有成功(替换密钥,keychar为9时为13,......,将关键事件转发给表单,......)

当然,因为它是FMX,我想要一个适用于所有平台的解决方案......

如果可以避免:

  • 浏览父母的儿童财产,
  • 有不同的代码片段来处理不同的平台
  • 硬编码标签序列
  • ......,它会很棒; o)

delphi multiplatform keyevent firemonkey

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

如何在Windows和OSX上浏览文件夹?

通常,我SHBrowseForFolder用来支持浏览文件夹...但我想支持Windows和OSX.

我在看:

  • System.IOUtils 但没有找到任何相关功能(也许,我错过了一个?)
  • TOpenDialog 选项,但没有找到一个选择文件夹而不是文件...

任何的想法?(我可以管理ifdefWindows,但我对Mac部分没有任何线索...)

干杯,

W.

delphi macos folderbrowserdialog delphi-xe2 firemonkey

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

只有一个带有 FireMonkey 的应用程序实例

使用FireMonkey和一个多平台应用程序(Windows + Mac OS X),如何让一个应用程序同时运行一个实例?

如果之前的实例已经在运行,如何将其设置为桌面前景窗口

  • 我可以检查文件是否被锁定:
    • 未锁定:我锁定它并正常运行
    • 锁定 :找到以前的版本(在 Windows 上,我知道如何......但在 mac 上?)并将其设置为前台窗口
  • 我可以检查同一进程启动了多少次(同上,在 Windows 上,好的,但如何在 Mac OS X 上执行此操作)
  • ...

delphi macos instance delphi-xe2 firemonkey

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