Flex - определить, какая кнопка была нажата в диалоге - PullRequest
0 голосов
/ 27 февраля 2012

Я использую browseForSave (), чтобы дать пользователю возможность сохранить файл перед переходом на предыдущий экран.На данный момент кнопка отмены в диалоговом окне сохранения просто закрывает диалоговое окно сохранения.Я хочу посмотреть, была ли нажата кнопка отмены, и если это так, продолжить переход к предыдущему экрану без сохранения.Прямо сейчас человек должен сохранить файл, чтобы вернуться назад.Ниже приведен код, который я использую.

public function save(e:MouseEvent):void{
            if (currentFile) {
            if (stream != null) 
            {
                stream.close();
            }
            stream = new FileStream();
            stream.openAsync(currentFile, FileMode.WRITE);
            stream.addEventListener(IOErrorEvent.IO_ERROR, writeIOErrorHandler);
            var str:String = mainTextField.text;
            str = str.replace(/\r/g, "\n");
            str = str.replace(/\n/g, File.lineEnding);
            stream.writeUTFBytes(str);
            stream.close();
            dataChanged = false;
        } 
        else
        {
            saveAs(null);
        }
        }

        private function saveAs(event:MouseEvent):void 
        {
            var fileChooser:File;
            if (currentFile)
            {
                fileChooser = currentFile;
            }
            else
            {
                fileChooser = File.documentsDirectory.resolvePath('untitled.html')
            }
            fileChooser.browseForSave("Save As");
            fileChooser.addEventListener(Event.SELECT, saveAsFileSelected);
        }

1 Ответ

1 голос
/ 27 февраля 2012

Если это AIR, вы можете прослушать событие «отмена».Если нет, я не думаю, что вы можете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...