Лучший способ скопировать или переместить файлы с Objective C?

Элемент управления Label поддерживает прозрачность. Просто дизайнер не позволит вам правильно разместить ярлык. Элемент управления PictureBox не является элементом управления контейнером, поэтому форма становится родителем метки. Итак, вы видите фон формы.

Легко исправить, добавив немного кода в конструктор формы. Вам нужно будет изменить свойство родительского ярлыка и пересчитать его местоположение, так как оно теперь относительно поля изображения вместо формы. Например:

    public Form1() {
        InitializeComponent();
        var pos = this.PointToScreen(label1.Location);
        pos = pictureBox1.PointToClient(pos);
        label1.Parent = pictureBox1;
        label1.Location = pos;
        label1.BackColor = Color.Transparent;
    }

Похоже на это во время выполнения:

enter image description here [/g0]


Другой подход - это решить дизайн времени. Это просто принимает атрибут. Добавьте ссылку на System.Design и добавьте класс в свой проект, вставьте этот код:

using System.ComponentModel;
using System.Windows.Forms;
using System.Windows.Forms.Design;    // Add reference to System.Design

[Designer(typeof(ParentControlDesigner))]
class PictureContainer : PictureBox {}
32
задан winsmith 29 January 2009 в 15:02
поделиться

2 ответа

NSFileManager и NSWorkspace и имеют методы, чтобы переместить, скопировать, и удалить файлы. Обычно Вы использовали бы NSFileManager начиная с его более легкого для работы с:

if ( [[NSFileManager defaultManager] isReadableFileAtPath:source] )
    [[NSFileManager defaultManager] copyItemAtURL:source toURL:destination error:nil];

Однако NSWorkspace может легко переместить файлы в Мусор, который не может сделать NSFileManager.

[[NSWorkspace sharedWorkspace] performFileOperation:NSWorkspaceRecycleOperation source:foldername destination:@"" files:filenamesArray tag:&tag];

Проверка документация для большего количества полного описания этих двух классов. ( NSFileManager, NSWorkspace)

54
ответ дан 27 November 2019 в 20:20
поделиться

[[NSFileManager defaultManager] copyItemAtPath:srcPath toPath:dstPath error:&error]

Вот ссылка на ссылку класса:

http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSFileManager_Class/Reference/Reference.html#//apple_ref/occ/instm/NSFileManager/copyItemAtPath:toPath:error:

13
ответ дан 27 November 2019 в 20:20
поделиться