小编Bri*_*tow的帖子

目标C的例子寻求

我正在尝试将滚动条添加到IKImageView.基本上,在那一刻,我需要将图像加载到一个视图程序的一些例子,如果窗口太小,树立的是做正确的事...滚动条

为什么我在apple dev网站上找不到这些例子?

补充信息:

看完ImagekitDemo后,我发现显然我需要在ScrollView中嵌入IKIMageView.(并以某种方式使IKImageView的has___Scroller属性为YES ...)

不过,现在(这是在ImageKitDemo也是如此)滚动条都很好,只要只需要一个(或没有).但是,只要两者都需要,并且窗口的任何一个尺寸都小于图像,两个滚动条就会消失.

鼠标滚动仍然有效.

macos scrollbars objective-c ikimageview

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

Obj-C中的多项任务是黑客吗?

所以,我有一个带有一堆属性的类(IKImageView).

我知道视图setProp:BOOL返回void.然而:

BOOL b = view.prop = NO;
Run Code Online (Sandbox Code Playgroud)

似乎工作.如果我有一个返回布尔值的函数f(),有人知道这是否真的在做:

[view setProp:f()];
Bool b = [view getProp];
Run Code Online (Sandbox Code Playgroud)

要么

[view setProp: f()];
Bool b = f();
Run Code Online (Sandbox Code Playgroud)

要么

BOOL TMP = f();
[view setProp: TMP];
BOOL b = TMP;
Run Code Online (Sandbox Code Playgroud)

我问,因为我这样做:

BOOL b = view.hasHorizontalScroller = YES;
NSLog(@"b is %d scroll is %d", b, [view getHasHorizontalScroller]);
Run Code Online (Sandbox Code Playgroud)

我得到"b是1,滚动是0"(这意味着setHasHorizo​​ntalScroller由于某种原因失败,但b设置正确)

但:

BOOL b;
[view setHasHorizontalScroller: YES];
b = [view getHasHorizontalScroller];
NSLog(@"b is %d scroll is %d", b, [view getHasHorizontalScroller]);
Run Code Online (Sandbox Code Playgroud)

我得到"b是0滚动是0"

这对我来说非常困惑.(另外,如果有人可以告诉我如何设置属性为YES失败,但是它成功设置了b ...但是没有错误出现......

properties objective-c getter-setter

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

创建可以打开给定格式文件的应用程序

我有一个用 Obj-C 编写的应用程序。info.plist 包含应用程序可以打开的文件类型列表。我非常确定这是有效的,因为当我尝试拖动不可接受类型的文件时,应用程序不会突出显示,但是当我拖动可接受类型的文件时,它会突出显示,并让我放下。

当我放下时,应用程序会正确启动,但是,然后我会收到一个对话框:

无法打开文档“foo.tiff”。DocView 无法打开“TIFF 文件”格式的文件。

我的 info.plist 中有这个

<key>CFBundleTypeExtensions</key>
<array>
   <string>tif</string>
   <string>tiff</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>TIFFFile.icns</string>
<key>CFBundleTypeName</key>
<string>TIFF File</string>
<key>CFBundleTypeOSTypes</key>
<array>
   <string>TIFF</string>
</array>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSHandlerRank</key>
<string>Documents/</string>
Run Code Online (Sandbox Code Playgroud)

谢谢。

macos file-type objective-c plist

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

在NSView中绘制图像

我有一个简单的Obj C程序,目前,它允许你加载图像,绘制它,理论上应该让你缩放和旋转.我正在使用NSAffineTranslations.

我希望图像锁定在左上角(与左下角的PS/PDF标准相对),所以我使用isFlipped,并调用[afTrans scaleXBy:1.0 yBy:-1.0];

问题在于,由于某种原因,在第一次调用drawRect之后,转换不会发生.

当我加载图像时,它会出现,看起来是正确的.如果我改变窗口的大小(调用drawRect),图像会绘制,但是会颠倒并反转.这意味着转换没有生效.我没有看到第二次任何数据有任何差异.

这是代码的精简版本:

- (void)drawRect:(NSRect)rect 
{
    // Drawing code here.

//    NSLog(@"window type: %d", [[self window] backingType]);
   NSAffineTransform *afTrans = [[NSAffineTransform alloc] init];
   NSGraphicsContext *context = [NSGraphicsContext currentContext];
   NSSize sz;
   NSRect windowFrame = [[self window] frame];
   NSRect cv =[[[self window] contentView] frame];
   float deltaX, deltaY;
   NSSize superSize = [[self superview] frame].size;
   float height, width, sHeight, sWidth;

   NSRect imageRect;

   sz = [ image size];
   imageRect.size = sz;
   imageRect.origin = NSZeroPoint;

   height = sz.height  ;
   width = …
Run Code Online (Sandbox Code Playgroud)

image-processing objective-c nsview nsaffinetransform

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

C的"外部"如何运作?

我有一个C/C++程序,它是Firefox的插件.因为它是一个插件,它有非主要入口点.这些入口点需要在C中编译,因为否则会导致名称损坏.但是,其他函数是过载的,所以它们需要是C++.解决方案是外部"C".我已经想通了.

但是,如果我在.c文件周围的外部"C",我会收到链接错误,因为C++文件名称被破坏,但.c文件中的调用没有.至少我认为这是正在发生的事情.

解决方案是将外部"C"放在.h文件周围.这个SEEMS意味着.h文件中声明的函数的名称不会被破坏,即使它们是在(可能是损坏的).c文件中定义的.

然而,对我来说,为什么这会起作用并没有任何意义.这是一块垃圾吗?我是否为以后难以找到的bug做好准备?或者这是解决这个问题的正确方法吗?

c c++

4
推荐指数
2
解决办法
5665
查看次数

如何将用户输入到PackageMaker包中?

我正在尝试创建一个安装包.我有我所有的组件,我想我理解了大部分过程.我想要一个安装/设置脚本作为安装的一部分运行.我计划将其作为安装后操作或安装后脚本.

问题是我需要用户输入.我无法弄清楚如何将用户输入到脚本中,或者如何在安装UI中添加一个页面,该页面具有用户输入的位置,然后将其传递给脚本.

我想,我可以写一个带有对话框的苹果脚本来询问问题,然后将这些信息传递给我的shell脚本(或者,在AppleScript中写下整个内容),但这似乎不必要地复杂......

有没有正常的方法来做到这一点?

谢谢

deployment macos packagemaker

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

界面生成器分段控件?

我正在构建一个工具栏,我希望它看起来至少有点像预览版。我想创建上一个/下一个按钮。我认为完成的方式是使用分段控件,每个控件中都有一个图像。问题是我不知道如何获得下面的标签。我可以在整个事物下获得一个居中的标签,但标记分段控件,但我无法在控件的每个部分下获得下一个和上一个标签。

我在这里缺少什么?

谢谢。

macos xcode interface-builder

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

PDFView printWithInfo:autoRotate:失败

我正在尝试打印一个PDF文档,我正在从一系列图像构建.如果它很重要,我会在Mozilla插件中完成所有这些操作.

我创建PDFDocument,并将其放入PDFView,然后我打电话

[printView printWithInfo: [NSPrintInfo sharedPrintInfo] autoRotate: YES];
Run Code Online (Sandbox Code Playgroud)

打印对话框出现(作为一个单独的窗口,而不是面板.我假设这是来自mozilla窗口,所以我不太担心它.对话框显示我的文档,我可以正确翻页,一切看起来都不错.

但是,当我点击"打印"时,带有"布局"等的下拉列表变为空,并且其下的视图变为空.窗口不会消失,文档不会打印.点击取消完全相同.我唯一能做的就是强行退出Mozillla.

我从apple dev网站开始使用PDFKitLinker2程序,该程序可以运行.但我看不出它与我的版本之间有任何显着差异.

关于在哪里看的任何建议?

谢谢.

编辑:是的,我知道这几乎是打印屏幕外PDFViews的完全重复,但从来没有得到足够的答案......(直到现在我才注意到它...)

printing objective-c pdfview

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

在NSPrintInfo中设置文件名

我正在尝试设置打印对话框,以便在用户尝试保存为PDF时,它会获得合理的文件名.

我目前有:

NSPrintInfo* pi = [NSPrintInfo sharedPrintInfo];
NSMutableDictionary *dict = [pi dictionary];
[dict setObject: name forKey: NSPrintSavePath];
[dict setObject: name forKey: @"NSPrintSavePath"];
NSPrintOperation *op = [pdfDoc getPrintOperationForPrintInfo:pi
                                   autoRotate:YES];
[op runOperation];
Run Code Online (Sandbox Code Playgroud)

字典中的NSPrintSave字段是正确的,但文本框不断提出".pdf.pdf"

关于它来自哪里的任何想法?

补充信息:

当我打印出我的NSPrintInfo对象时,我得到:

print info {
   NSBottomMargin = 90;
   NSCopies = 1;
   NSDetailedErrorReporting = 0;
   NSFaxNumber = "";
   NSFirstPage = 1;
   NSHorizonalPagination = 2;
   NSHorizontallyCentered = 1;
   NSJobDisposition = NSPrintSpoolJob;
   NSJobSavingFileNameExtensionHidden = 0;
   NSJobSavingURL = bob -- /;
   NSLastPage = 2147483647;
   NSLeftMargin = 72;
   NSMustCollate = 1;
   NSOrientation = …
Run Code Online (Sandbox Code Playgroud)

cocoa objective-c

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

Pandas DataFrame样式HTML显示没有索引?

我有一个pandas数据帧,我正在使用df.style对象使其突出显示奇数行,所以:

def highlight_oddRow(s):
    return ['background-color: yellow' if s.name % 2 else '' for v in s]

table = pd.DataFrame(
    {'a': [3,9,8,0,2], 'b': [5,95, 9, 25,5], 'c': [23,54, 2, 3,5], 'row': [1, 2, 3, 4, 5]})

with open ('out.html','w') as out:
    print >> out, table.style.apply(highlight_oddRow, axis=1).render()
Run Code Online (Sandbox Code Playgroud)

但是,这总是打印出索引.有没有办法告诉它不要这样做?

html pandas

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