找回密码
 注册帐号

扫一扫,访问微社区

其他 unity打开windows的选择文件路径浏览器后停止update

12
回复
254
查看
[ 复制链接 ]
排名
39864
昨日变化

3

主题

13

帖子

37

积分

Rank: 1

UID
180825
好友
0
蛮牛币
85
威望
0
注册时间
2016-11-4
在线时间
15 小时
最后登录
2020-1-12
2020-1-5 22:48:49 显示全部楼层 阅读模式
5蛮牛币
只要在打开文件浏览器后就会停止update,影响到了如果在打开文件浏览器时,拖动unity打包好的exe,就有时候ui会空白显示

打开文件夹浏览器后拖动UI消失

打开文件夹浏览器后拖动UI消失

正常状态

正常状态

TestOpenDialog.zip

5.15 KB, 下载次数: 11

工程打包上传请大神帮忙看看

回复

使用道具 举报

3偶尔光临
217/300

1

主题

54

帖子

217

积分

Rank: 3Rank: 3Rank: 3

UID
320999
好友
2
蛮牛币
242
威望
0
注册时间
2019-4-30
在线时间
163 小时
最后登录
2020-1-20
2020-1-6 10:17:21 显示全部楼层
File/Build Settings/Player Settings/Resolution and Presentation下的 Run In Background勾上
回复

使用道具 举报

0

主题

23

帖子

50

积分

Rank: 2Rank: 2

UID
335892
好友
0
蛮牛币
53
威望
0
注册时间
2019-11-14
在线时间
23 小时
最后登录
2020-1-19
2020-1-6 10:33:22 显示全部楼层
初恋脸 发表于 2020-1-6 10:17
File/Build Settings/Player Settings/Resolution and Presentation下的 Run In Background勾上

不可能管用的
回复

使用道具 举报

0

主题

23

帖子

50

积分

Rank: 2Rank: 2

UID
335892
好友
0
蛮牛币
53
威望
0
注册时间
2019-11-14
在线时间
23 小时
最后登录
2020-1-19
2020-1-6 10:35:35 显示全部楼层
SHBrowseForFolder 这个东西不知道具体原理 和占主线程一样  所以unity就停了
回复

使用道具 举报

5熟悉之中
815/1000
排名
4594
昨日变化

2

主题

99

帖子

815

积分

Rank: 5Rank: 5

UID
56032
好友
2
蛮牛币
1715
威望
0
注册时间
2014-11-18
在线时间
396 小时
最后登录
2020-1-16
2020-1-6 16:18:44 显示全部楼层
有一个办法是,点击按钮的时候开启一个新的线程去打开文件夹,点击确定按钮后就会得到相应的路径,然后再Update方法里去使用这个路径加载图片等,但是注意结束线程和Update的开关。
回复

使用道具 举报

排名
39864
昨日变化

3

主题

13

帖子

37

积分

Rank: 1

UID
180825
好友
0
蛮牛币
85
威望
0
注册时间
2016-11-4
在线时间
15 小时
最后登录
2020-1-12
楼主 2020-1-6 16:47:16 显示全部楼层
MN2014mini 发表于 2020-1-6 16:18
有一个办法是,点击按钮的时候开启一个新的线程去打开文件夹,点击确定按钮后就会得到相应的路径,然后再Up ...

试过在新线程中用这个的话打不开对话框
回复

使用道具 举报

5熟悉之中
815/1000
排名
4594
昨日变化

2

主题

99

帖子

815

积分

Rank: 5Rank: 5

UID
56032
好友
2
蛮牛币
1715
威望
0
注册时间
2014-11-18
在线时间
396 小时
最后登录
2020-1-16
2020-1-6 20:00:35 显示全部楼层
574780830 发表于 2020-1-6 16:47
试过在新线程中用这个的话打不开对话框

之前有用过,可以打开的,不过可能跟你写的打开方式有些不同
回复

使用道具 举报

排名
39864
昨日变化

3

主题

13

帖子

37

积分

Rank: 1

UID
180825
好友
0
蛮牛币
85
威望
0
注册时间
2016-11-4
在线时间
15 小时
最后登录
2020-1-12
楼主 2020-1-7 00:41:59 显示全部楼层
public class DialogTest : MonoBehaviour
{
    void Start()
    {

        GameObject.Find("Button").GetComponent<Button>().onClick.AddListener(() =>
        {
            Thread childThread = new Thread(OpenDirectory);
             childThread.Start();
        });

    }

    private void OpenDirectory()
    {
        SelectFilePathDialog dialog = new SelectFilePathDialog();
        SelectFilePathDialog.DialogReturnInfo info = dialog.OpenDialog();
        if (info.isOk)
        {
            Console.WriteLine(info.path);
        }

    }

}
这样写有问题吗,这样打不开
回复

使用道具 举报

5熟悉之中
815/1000
排名
4594
昨日变化

2

主题

99

帖子

815

积分

Rank: 5Rank: 5

UID
56032
好友
2
蛮牛币
1715
威望
0
注册时间
2014-11-18
在线时间
396 小时
最后登录
2020-1-16
2020-1-7 11:28:03 显示全部楼层
574780830 发表于 2020-1-7 00:41
public class DialogTest : MonoBehaviour
{
    void Start()

差不多吧,这样试试:

void Start()
    {
        GameObject.Find("Button").GetComponent<Button>().onClick.AddListener(() =>
        {
            Thread t = new Thread(new ThreadStart(OpenFileTest));
            t.Start();
            //OpenFileTest();
        });
    }

  /// 打开文件夹
    void OpenFileTest()
    {
        OpenFile.Open(str =>
        {
            StartCoroutine(_LoadImage(str));
        }, OpenFile.FileType.png, OpenFile.FileType.jpg);
    }
回复

使用道具 举报

排名
39864
昨日变化

3

主题

13

帖子

37

积分

Rank: 1

UID
180825
好友
0
蛮牛币
85
威望
0
注册时间
2016-11-4
在线时间
15 小时
最后登录
2020-1-12
楼主 2020-1-7 23:16:12 显示全部楼层
MN2014mini 发表于 2020-1-7 11:28
差不多吧,这样试试:

void Start()

OpenFile是啥,我这边没这个东西,还有_LoadImage是啥,也没
回复

使用道具 举报

5熟悉之中
898/1000
排名
5087
昨日变化

5

主题

164

帖子

898

积分

Rank: 5Rank: 5

UID
66036
好友
1
蛮牛币
16
威望
0
注册时间
2015-1-5
在线时间
443 小时
最后登录
2020-1-8
QQ
2020-1-8 09:08:53 显示全部楼层
是不是runinbackground没勾选
回复

使用道具 举报

5熟悉之中
815/1000
排名
4594
昨日变化

2

主题

99

帖子

815

积分

Rank: 5Rank: 5

UID
56032
好友
2
蛮牛币
1715
威望
0
注册时间
2014-11-18
在线时间
396 小时
最后登录
2020-1-16
2020-1-9 21:53:52 显示全部楼层
574780830 发表于 2020-1-7 23:16
OpenFile是啥,我这边没这个东西,还有_LoadImage是啥,也没

这个只是打开文件夹的方法而已,测试一下你的线程是否有开启并执行了,如果还不行那就可能是设置了ulFlags的问题了,可以设置注释掉这个字段看看
回复

使用道具 举报

排名
39864
昨日变化

3

主题

13

帖子

37

积分

Rank: 1

UID
180825
好友
0
蛮牛币
85
威望
0
注册时间
2016-11-4
在线时间
15 小时
最后登录
2020-1-12
楼主 2020-1-12 14:37:27 显示全部楼层
本帖最后由 574780830 于 2020-1-12 15:19 编辑
MN2014mini 发表于 2020-1-9 21:53
这个只是打开文件夹的方法而已,测试一下你的线程是否有开启并执行了,如果还不行那就可能是设置了ulFlag ...

ulFlag注释了就好了,没有要ulFlag和多线程都要的办法吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则