QT点击一个按钮后出现选择文件对话框

void MainWindow::open()
{
    if (okToContinue()) {
        QString fileName = QFileDialog::getOpenFileName(this,
                                   tr("Open Spreadsheet"), ".",
                                   tr("Spreadsheet files (*.sp)"));
        if (!fileName.isEmpty())
            loadFile(fileName);
    }
}

Linux 系统中修改右键中的打开方式

注意Linux 系统中的几个目录和文件。

/usr/share/applications/下的desktop文件
/usr/share/applications/mimeinfo.cache文件
~/.local/share/applications下的desktop文件
~/.local/share/applications/default.list目录下的文件
~/.local/share/applications/mimeinfo.cache文件
/etc/gnome/defaults.list文件

其中default.list文件保存的是文件的打开方式,比如txt文档用什么程序打开之类。自然/etc下的是全局的文件打开方式,.local下的是个人的文件打开方式。

desktop文件是菜单项,就是出现在Application、System下的菜单项。/usr下的是全局的菜单项,.local下的是个人的菜单项。

cache文件全局的文件打开方式和个人的文件打开方式缓存

想添加一个菜单项,到/usr/share/applications/下随便打开一个desktop文件,照着改就行了。

怎样把自定义的菜单加入到自己想去的菜单项下呢?比如加到Programming下,如果想增加一个顶级目录,即Application下的第一层目录。

在Linux桌面系统,用户也可以像在Windows平台下,通过点击位于桌面或菜单上的快捷方式轻松找开目录应用程序。在Linux KDE和Linux GNOME桌面系统都使用Desktop Entry文件标准来描述程序启动配置信息。

Ubuntu系统下文件关联

PS:如果你要修改文件的打开方式,请选择右键=>属性=>打开方式=>删除和Windows一样,在Gnome的文件管理器(nautilus)里,双击一个文件的时候, 系统会自动调用相应的程序去打开这个文件。前提是能打开这个文件的软件已经安装并且配置完毕了。

在Nautilus里通过右键菜单固然可以修改默认的打开方式,但是缺乏灵活性和可操作性,比如,不能删除一些候选的打开方式,不能批量增加一些打开方式等等。

经过反复的摸索,终于被我发现了GNMOE的打开方式的配置方式。
这里需要涉及到以下几个目录和文件

~/.local/share/applications
/etc/gnome/defaults.list
/usr/share/applications
/usr/share/applications/mimeinfo.cache
~/.local/share/applications/mimeinfo.cache
去这几个目录看一下,就会发现很多以 desktop 为后缀的文件。 


这些文件是多功能的,第一,它们是组成GNMOE的“开始”菜单的一部分,即“开始”
菜单里的一些应用程序项,在这里都能找到。你可以运行 alacarte, http://www.linuxidc.com 这里会列出整个菜单的结构,你可以编辑它,但是很多项你没法删除,因为没有权限,你试着用root权限去运行 alacarte ,抱歉,你还是没有权限删除,要删除它们,只有在/usr/share/applications下面找到对应的文件,直接删除这个文件即可。

从总体上讲
/etc/gnome/defaults.list保存了全局的打开方式
~/.local/share/applications/defaults.list保存了个人的打开方式
当两着不一致是,优先采用局部的个人设置。

~/.local/share/applications
/usr/share/applications
这两个分别是局部的desktop项和全局的desktop项

/usr/share/applications/mimeinfo.cache
~/.local/share/applications/mimeinfo.cache
这两个分别是全局的和局部的打开方式缓存

产品经理如何在技术人员面前更有说服力?

作者简介:吴伟,资深产品经理,曾就职于新浪,现就职于约瑟网络,旗下产品“企业问答”,一款面对创业者的问答类社区产品。

以我7年来做PM(产品经理)的经验来看,说服他人,特别是研发、设计、前端这些研发部门的同事,最重要的不是口才、沟通能力和数据,而是专业。专业就是:第一,你要用内行的思维方式、表达方式和处理方式来思考、沟通和执行;第二,你要经常可以做出正确的决定。

一个人要先相信你能说出正确的话,才有可能认真去听你说的内容,进而才有可能认可你的话。通常人们认为只有内行才有可能说出正确的话来,而外行只能瞎指挥。所以PM要时时刻刻表现的很内行,很专业。

有些PM很苦恼:我明明说的是对的,为什么研发人员听不进去?是的,你说的可能是对的,但是由于你平时的表现让研发人员觉得你很外行,他们根本就没有认真听你在说什么。

只有尽量多、尽量深入的了解上下游相关岗位的专业知识,并且有一定的实践经验,才能让我们显得专业。在与相关岗位的沟通中,获得对方的信任感,进而采纳我们的意见。

有几个小技巧可以介绍一下,不过在看这些技巧之前,我必须重申一遍:让自己变得专业的根本办法是自己要尽量多的了解各个岗位的专业知识,小技巧只是一种手段,不要幻想着只凭借技巧就能真正的专业起来。

技巧1:尽量说术语

在我们与研发人员沟通的时候,尽量不要说大白话,而是使用术语。这样会让人家感觉我们很懂技术。例如有一次我和一个客户端工程师说:“我希望弹 出的窗口是模态的。”工程师听完后很诧异的说:“你还知道模态?”我说:“当然啦,这对交互设计很重要啊。”于是工程师立刻就把窗口改成模态的了,根本没 问我为什么。那么什么叫模态呢?用大白话说就是弹出一个窗口,窗口以外的地方都是黑的,或者不可以操作,只有这个窗口可以操作,类似于Windows里面 经常弹出来的讨厌的错误提示。但是你要是跟工程师这么描述,碰上脾气好的说不准帮你改改,碰上不好的准保反问一句:那多讨厌啊,我就讨厌Windows弹 错误提示。

技巧2:思维要周密

在说话之前要尽量把所有可能的情况及其解决方案想清楚。比如你要修改一个按钮的位置,人家自然要问你,空出来的位置怎么办,改过去之后会不会影响现有的功能,用户能不能习惯等等,如果你能胸有成竹的一一化解,别人自然会听从你的建议。

技巧3:让对方自己得出结论

人都是有自尊心的,都希望自己的决定是正确决定,如果你总是说“你这样是错的,我是对的”必然引起别人的反感。所以你可以先把遇到的问题摆出来,在提出自己的解决方案后立刻说:这方面你是专家,如果你觉得这个方案能用就用,如果有更好的方案我也没什么意见。

人嘛,通常都是比较懒的,既然你能提出一个还算说得过去的解决方案,而且又让对方觉得是他自己的选择,通常也就不会为难你了。

技巧4:看人下菜碟

不是对每个都用同样的话说服的,人和人都有所不同。以我的经验,对待工程师、设计师、老板是不同的。

对待工程师要有条理,逻辑要清晰,讲究数据。例如:方案1会造成数据服务器负荷过重,并发量在2万/秒以上,并且至少要占用10G的储存空间, 最重要的是,我们付出了这么大的代价,其实只满足了20%的用户,而且这部分用基本上都是不付费的用户。这一大套话说完,研发人员会认真想一想:也是啊, 万一服务器宕机了责任就大了,还是用方案2吧。

对待设计师要以情动人,因为设计师一般都是学美术出身的,特别感性。例如:大姐,你就给我改改吧,为了画这个原型我昨天都加了一宿班了,你今天 不改,明天指不定又插进来什么活儿呢,我这个项目得什么时候上线啊。再说也不是我想改啊,是销售那边儿一会儿说用户喜欢这个,一会儿说用户喜欢那个,我们 也拧不过他们啊。设计师一听,都是同事,谁还没个难处啊,得了,加班儿给人做了吧。

对待老板要学会画蓝图,例如:根据竞品研究的结果看,这个产品非常有前景,XX刚上线1个月,就已经有100万用户,10万同时在线,收入也差 不多有400来万。我们在技术上、渠道上、政府关系上都比他们强,我觉得只要能够在2个月内推出,各项数据肯定比他们强。更何况,我们的产品线目前缺乏的 就是用户沉淀,而这个产品正好提供了强大的社交功能,弥补了产品线的空缺。老板一听,小伙子想的挺清楚啊,成,给你两个工程师,一个设计师,1万块项目奖 金,1个月给我做出来。业绩好的话再给你发年终奖。

当然啦,还有些人江湖气很浓,他只要当你是兄弟,你怎么说他怎么做,没原因,没为什么。对于这种人平时多吃几顿饭,多送点小礼物,到时候自然帮你。

技巧5:人格魅力

做人要有幽默感,要学会缓和气氛。没必要每次需求讨论的时候都板着脸训人。说说笑话,插科打诨,给设计师倒杯水,给工程锤锤肩,送给运营的小姑 娘几块儿巧克力,给运维的同事买几瓶水。你平时这么注重积累,在你需要的时候别人自然不会为难你。能做的就做了,不能做的睁一眼闭一眼也就做了。

最后再说一遍:所有的技巧都是一种手段,真才实干才是王道