小编spu*_*eon的帖子

如何在Xcode 4中创建Subversion标记?

我无法弄清楚如何在Xcode 4中创建Subversion标记.我认为它将在Organizer - > Repositories界面中,但我似乎无法找到方法.在Xcode 3中,您可以浏览SVN存储库,单击窗口顶部栏中的"复制"按钮,然后指定标签/ SVN目录.我在Xcode 4中看不到相同类型的选项.帮助?

我现在的解决方法是命令行:

svn copy trunkSourceUrl tagsDestinationUrl -m "My tag message."
Run Code Online (Sandbox Code Playgroud)

svn cocoa xcode4 xcode-organizer

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

Android应用程序由于drawables而不是"专为平板电脑设计"

Google Play声明我的应用不是专为平板电脑设计的:"您的APK应包含适用于普通平板电脑屏幕密度的自定义可绘制资源." 它链接到4.在平板电脑应用质量页面上使用专为平板电脑屏幕设计的资产.我试图理解我是如何不遵守第4节的,我很欣赏这些见解.

  1. 平板电脑资产的第4部分是否准确适用于Action Bar图标大小?看起来32dp是指定的大小(mdpi为32x32px),但这似乎与指定24dp 的材料触摸目标大小规范冲突.我使用来自Google Material-design-icons套件的24dp资产作为我的Action Bar(工具栏),套件中没有32dp Android图标.

  2. 我在项目中包含了drawable-xhdpi,drawable-xxhdpidrawable-xxxhdpiPNG可绘制资产,但我没有包含drawable-hdpi资产.这可能是我不是"专为平板电脑设计的原因吗?" 文档说明所有drawables应该"针对hdpi,xhdpi,xxhdpi或xxxhdpi大小中的至少一个进行优化",并且我已经为至少一个做了这个.

  3. 我的启动图标大小是正确的,包括MDPI - xxxhdpi版本(mipmap-mdpi,mipmap-hdpi,等).

android tablet google-play android-drawable

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

具有管理员权限的Delphi外部exe在Windows 8中最小化

我有一个问题,当我执行在其清单中请求管理员权限的命令行帮助程序时,Windows 8用户帐户控制(UAC)弹出窗口被最小化.UAC弹出窗口在Windows任务栏中闪烁黄色,导致令人困惑的用户体验:

最小化UAC

单击任务栏图标后,UAC警报显示:

UAC警报

在Windows 7中,UAC警报未最小化,但显示在前台.有关如何在Windows 8中解决此问题的任何想法?

作为参考,我的主应用程序在用户权限下运行并执行辅助程序ShellExecuteEx.我设置ShellExecuteExTShellExecuteInfo.nShowSW_SHOW.

windows delphi uac exe shellexecuteex

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

Mac App Store沙盒和处理10.7.3之前的安全范围书签

应用程序重新启动后,我需要沙盒应用程序重新打开打开的文件.Apple使用NSURL书签创建和解析方法中的NSURLBookmarkCreationWithSecurityScopeNSURLBookmarkResolutionWithSecurityScope选项提供安全范围的书签.但是,这些标志/选项仅适用于10.7.3或更高版本,并导致10.7.3之前的应用程序失败.

如何在沙盒应用中处理10.6到10.7.3的文件书签保留/重新打开?

-

后续行动:请在下面看到我的答案.问题不是由使用NSURLBookmarkCreationWithSecurityScope而是使用安全范围的书签启动和停止方法引起的.

macos cocoa bookmarks sandbox app-store

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

从资源DLL字符串表设置Unicode标题

我在UI上错误地显示Unicode字符时遇到问题.我有一个资源专用DLL包含用于UI本地化的字符串表.我在Delphi XE3中创建了DLL,只有一个DLL项目(只有{$R 'lang.res' 'lang.rc'}在DPR文件中,并给我lang.dll).我已经验证我的lang.rc文件是UTF-8格式,带有Windows CRLF换行符.当我从DLL加载字符串时,Unicode字符在界面上混乱.这是一些细节.

字符串表中的一个片段:

STRINGTABLE
{
59,"180?"
60,"90? CW"
61,"90? CCW"
}
Run Code Online (Sandbox Code Playgroud)

以下是代码片段,说明了我对Unicode字符的问题:

// explicitly assigning the degrees character shows 180? properly
ImageMenu180Action.Caption := '180?'; 

// getting the resource from the DLL shows some weird two-character string for the degrees character
ImageMenu90CWAction.Caption := TLangHelper.LoadStr(IDS_ImageMenuRotationCW90);

// OutputDebugString shows the degrees character in the debugger output correctly
OutputDebugString(PChar('IDS_ImageMenuRotationCW90: '+TLangHelper.LoadStr(IDS_ImageMenuRotationCW90)));
Run Code Online (Sandbox Code Playgroud)

这是我的Delphi函数,用于从资源DLL加载字符串:

class function TLangHelper.LoadStr(ResourceId: Integer):String;
var
   Buff: String;
   L: Integer;
begin
  Result := '';
  if LangDllHandle = …
Run Code Online (Sandbox Code Playgroud)

delphi unicode dll localization

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

Delphi子类可视化组件并使用它

我想将TToolBar子类化为另一个名为MyTToolBar的类,以便我可以覆盖一个方法.我是Delphi的新手,但经过两个小时尝试各种方法后,我无法使用MyTToolBar代替TToolBar.我不能成为第一个想要在可视组件类上覆盖方法的人.

我来自Xcode背景,其中可视化组件的子类化很容易.您创建父类的子类(例如,MySubclass)(例如,MySuperClass),然后只需在Xcode的Interface Builder视图中分配子类.子类被自动识别和使用.

为什么我在Delphi RAD Studio XE3中似乎无法做到这一点?

将TToolBar添加到TForm后,似乎无法更改类.我尝试了Object Inspector以及.PAS源代码文件.如果我更改.PAS文件中的类,我会收到一条错误消息,指出工具栏"应该是Vcl.ComCtrls.TToolBar类型,但声明为MyTToolbar.更正声明?" 这看起来很傻......

哦,我还使用了新的组件向导选择:文件 - >新建 - >其他 - > Delphi项目 - > Delphi文件 - >组件.我选择MyTToolBar的祖先作为TToolBar并告诉它在'Samples'调色板页面中注册.但是,它不会出现在"样本"页面中.

delphi overriding subclass

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

Delphi:TCoolBar中的Styain TMainMenu和TToolBar

我正在尝试在Delphi XE3中创建一个应用程序菜单和工具栏,如下所示(来自我的程序):

TCoolBar中的主菜单和工具栏

我可以通过执行以下操作来复制此外观的一部分:

  1. 创建一个新的VCL Forms应用程序
  2. TMainMenu为File/Edit/etc 添加和插入模板菜单.
  3. 添加TCoolBar到表单
  4. 添加TToolBarTCoolBar
  5. 一个添加TToolButtonTToolBar每个文件/编辑/ etc.并选择Group属性
  6. 从表单中删除菜单属性(因此没有显示程序菜单)
  7. 将每个的MenuItem属性分配TToolButton给相应的文件/编辑/等.
  8. 添加第二个TToolBarTCoolBar第一个下

这是它的样子:

我在TCoolBar中的主菜单和工具栏

它有点类似,但仍缺少所有样式元素来修改新应用程序菜单的外观.

我的问题是,有没有人知道如何实现类似的外观,也许与第三方组件库?原始开发人员似乎可能使用了第三方VCL库.除了样式菜单和我之外,我还喜欢投影TCoolBar.

我已经尝试过Raize Components,TMS Advanced Toolbars&Menus,我正在尝试使用DevExpress VCL组件.他们似乎都没有提供解决方案,但也许我还不熟悉他们还没弄清楚.

delphi vcl toolbar menubar

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

Delphi TSplitter闪烁问题

我正在使用启用了VCL样式的Delphi,我想为我的表单更改TSplitter的颜色.我在内TSplitter.Paint插器类中重写以绘制比默认VCL样式cBtnFace颜色更暗的颜色,但在调整大小时窗体上会出现明显的闪烁.有没有办法消除这种闪烁?

我试过这些东西来尝试减少闪烁,但没有一个有效:

  1. 禁用VCL样式(TSplitter.StyleElements := []).

  2. 更改VCL样式位图样式设计器的"分割器"对象元素,但修改此对象元素不会更改分割器的外观.

  3. 试图处理对象WM_ERASEBKGND上的消息TControl,但我无法在我的插入器类中调用该过程.

    procedure WMEraseBkgnd(var Msg: TWMEraseBkgnd); message WM_ERASEBKGND;
    ...
    procedure TSplitter.WMEraseBkgnd(var Msg: TWMEraseBkgnd);
    begin
        // this is never invoked by the TSplitter
        Msg.Result := 1;
    end;
    
    Run Code Online (Sandbox Code Playgroud)

任何其他想法摆脱闪烁的TSplitterTSplitter根据我所知,没有DoubleBuffer属性或类似的东西.

UPDATE

不幸的是,我不能共享代码库,但我可以告诉你,这是TSplitter闪烁时应用程序UI设置的方式:

TForm (DoubleBuffered = False)
-> BackgroundPanel (DoubleBuffered = True, ParentBackground = False)
-> -> A TGradient, image and label to fill the BackgroundPanel
-> LeftPanel (ParentBackground = False`, no flickering) …
Run Code Online (Sandbox Code Playgroud)

delphi flicker vcl-styles

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