GVKun编程网logo

Windows应用程序与自动完成使用UNIX机器文件和目录的选项卡(应用程序自动运行什么意思)

17

对于Windows应用程序与自动完成使用UNIX机器文件和目录的选项卡感兴趣的读者,本文将会是一篇不错的选择,我们将详细介绍应用程序自动运行什么意思,并为您提供关于asp.net–Windows应用程

对于Windows应用程序与自动完成使用UNIX机器文件和目录的选项卡感兴趣的读者,本文将会是一篇不错的选择,我们将详细介绍应用程序自动运行什么意思,并为您提供关于asp.net – Windows应用程序与Web应用程序开发、bash – Unix文件命名规则有效的选项卡完成?、c# – 从Windows服务启动Windows应用程序、c# – 如何动态控制台应用程序或Windows应用程序的有用信息。

本文目录一览:

Windows应用程序与自动完成使用UNIX机器文件和目录的选项卡(应用程序自动运行什么意思)

Windows应用程序与自动完成使用UNIX机器文件和目录的选项卡(应用程序自动运行什么意思)

Unix / Linux支持当按下“tab”时自动完成文件和目录。 我需要在我的Windows应用程序中创build这个function。 我有一个用户input文件名的文本字段,我想要响应一个“标签”按就好了,当我们在一个Unix控制台:

如果有一个选项 – 自动完成。

一些选项 – 显示选项列表。

没有select – 纳达。

对于我的SSH连接到我的Unix机器,我使用ch.ethz.ssh API。

有没有办法做到这一点?

Git别名 – 命令行自动完成分支名称

自定义zsh自动完成

Pyreadline在Windows上的任意自动完成

Bash Tab完成文件名后参数

如何在单独的进程中运行一个shell并获得自动完成? (python)

java linuxterminal-cp自动完成

git:哈希自动完成

如何覆盖现有的zsh键盘完成?

YouCompleteMe无法自动完成

Autohotkey中的多个游标

首先你想有一个没有焦点循环的文本字段,并且制表符被禁止:

jTextField1.setFocusCycleRoot(true); jTextField1.setFocusTraversalKeysEnabled(false);

然后一个数据模型的文件(这里是本地目录,但SSH也是这样):

private File dir = new File("C:/Work"); private String typedPrefix = null; private List<String> filesWithPrefix = new ArrayList<>();

然后按TAB一键处理:

消耗事件。

获取前缀到搜索文件名的插入符号。

如果你只需要限制已经找到的文件名,那么做,否则物理搜索它们。

在文件名中查找最长的通用前缀。 显示那个。

private void jTextField1Keypressed(java.awt.event.KeyEvent evt) { System.out.println("Keypressed " + evt); if (evt.getKeyCode() == KeyEvent.VK_TAB) { evt.consume(); int caretPos = jTextField1.getcaretposition(); try { final String newPrefix = jTextField1.getText(0,caretPos); System.out.println("newPrefix: " + newPrefix); if (!newPrefix.isEmpty()) { if (typedPrefix == null || !newPrefix.startsWith(typedPrefix)) { // Must physically reload possible values: String[] fileNames = dir.list(new FilenameFilter() { @Override public boolean accept(File dir,String name) { return name.startsWith(newPrefix); } }); filesWithPrefix.clear(); Collections.addAll(filesWithPrefix,fileNames); typedPrefix = newPrefix; } else { // Can reduce prior selection: for (ListIterator<String> it = filesWithPrefix.listIterator(); it.hasNext(); ) { String fileName = it.next(); if (!fileName.startsWith(newPrefix)) { it.remove(); } } typedPrefix = newPrefix; } System.out.println("filesWithPrefix: " +filesWithPrefix); if (!filesWithPrefix.isEmpty()) { // Find longest common prefix: String longestCommonPrefix = null; for (String fileName : filesWithPrefix) { if (longestCommonPrefix == null) { longestCommonPrefix = fileName; } else { while (!fileName.startsWith(longestCommonPrefix)) { longestCommonPrefix = longestCommonPrefix.substring(0,longestCommonPrefix.length() - 1); } } } if (longestCommonPrefix.length() > typedPrefix.length()) { jTextField1.setText(longestCommonPrefix); jTextField1.setCaretPosition(longestCommonPrefix.length()); typedPrefix = longestCommonPrefix; } if (filesWithPrefix.size() > 1) { // Show popup: ;;; } else if (filesWithPrefix.size() == 1) { // File selected: System.beep(); } } } } catch (BadLocationException ex) { Logger.getLogger(TabsJFrame.class.getName()).log(Level.SEVERE,null,ex); } } }

缺少的是显示不明确的文件名称。 弹出菜单会很好,不是吗?

弹出:

// Show popup: jpopupmenu popup = new jpopupmenu(); for (String fileName : filesWithPrefix) { popup.add(new AbstractAction(fileName) { @Override public void actionPerformed(ActionEvent e) { jTextField1.setText(e.getActionCommand()); } }); } Point pt = jTextField1.getCaret().getMagicCaretPosition(); popup.show(jTextField1,pt.x,pt.y + 5);

asp.net – Windows应用程序与Web应用程序开发

asp.net – Windows应用程序与Web应用程序开发

只是想了解 Windows(桌面)应用程序和Web应用程序开发之间的主要区别.我所有的知识和经验一直作为一个Web应用程序开发人员,使用c#和.net框架.我有兴趣知道开发人员在两个方面都很熟练,比如WPF(桌面)开发.

Windows应用程序开发遵循不同的方法,测试方法等?当我想到安装Windows应用程序以及安装应用程序的用户,还要考虑软件如何更新时,似乎这种类型的开发涉及的过程更加结构化,并且具有更少的错误空间”.

你认为没有WPF经验的人或Windows应用程序体验,但具有.net背景,有足够的知识来自信地设计和开发一个WPF应用程序(作为一个团队领导),或者如果一个这样的项目随之而来的是那些有经验的WPF应用程序盗版者呢?

解决方法

我在丰富和开发时期工作,WinForms将Web打破了水,特别是因为像ClickOnce这样的技术大大减少了部署困扰.使用winform,您只需要对平台进行编码,而不考虑其他大量因素.

整个请求/响应通常是IMO,而且有时是不可靠的,更不用说越来越多的浏览器支持,不同的开发标准和页面生命周期的学习曲线哦,当然,广告的趋势越来越大,的地方

然而,哪些网络应用程序带给我们的是WinForms希望达到的目标,所以虽然有一个学习曲线,而且开发时间的增加有明显的收获.

我们(和我想象的大部分机构)倾向于使用Windows应用程序进行管理,其中丰富的用户界面在最短的时间内是可取的,毕竟,为什么要浪费Web服务器资源,当可能有99%的可用cpu在每个用户PC上?

bash – Unix文件命名规则有效的选项卡完成?

bash – Unix文件命名规则有效的选项卡完成?

我觉得我经常以这样的方式命名文件,使我的计算机在程序中不断发出哔声,因为选项卡完成是不明确的.在做很多Unix编程之前,我倾向于用相同的前缀命名相关的文件来表示它们的关系.现在我必须重新考虑我的文件夹和文件结构和名称的方法更有效地进行编程.

编程时应用什么启发式或规则来简化标签完成?您是否使用任何工具使标签完成顺利(例如emacs icicles)?

编辑:哇,谢谢神奇的见解.我认为我的每一个可能的弱点在答案中被解释.我接受了似乎最好的提高生产力的一个,尽管他们都值得阅读.

@H_301_5@
@H_301_5@
我通常在相关文件位于同一目录中的项目中工作,文件名本身专门用于指示其内容.

当然,这就提出了一个问题,你为什么要在文件名上完成标题?如果您正在阅读源代码,那么有TAGS,CEDET和其他utilities的其他版本,您可以绕过文件名,直接跳转您之前的函数/变量.

这一切都取决于你真正想要做什么,找到一个特定的文件通常是不同的手段.

@H_301_5@

总结

以上是小编为你收集整理的bash – Unix文件命名规则有效的选项卡完成?全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

c# – 从Windows服务启动Windows应用程序

c# – 从Windows服务启动Windows应用程序

我正在尝试使用以下代码从 windows服务启动 Windows应用程序
Process.Start(@"filename.exe");

在Windows 7中,我收到一个弹出窗口,说:“这台计算机上运行的程序正在尝试显示一条消息”

解决方法

看看下面的链接:

http://www.codeproject.com/KB/vista-security/SubvertingVistaUAC.aspx

c# – 如何动态控制台应用程序或Windows应用程序

c# – 如何动态控制台应用程序或Windows应用程序

我有一个小应用程序,应该以两种模式执行:非UI或 WPF窗口.它应该依赖于命令行参数.

在每种模式中,我都需要显示一些反馈日志:

>在WPF窗口模式下,WPF将负责可视化日志,
>在无UI模式下,我需要一个控制台来显示日志.如果我的应用程序是从控制台(主要是cmd.exe)启动的,我想在不打开新的应用程序的情况下使用它.如果我的应用程序已在控制台外启动(双击资源管理器,CreateProcess,…),我需要创建一个新的控制台来输出我的结果并等待Readkey关闭它.

我已经找到:

>我如何创建一个新的控制台:
How to open/close console window dynamically from a wpf application?,
>如何获取当前控制台窗口句柄以显示/隐藏它:
Show/Hide the console window of a C# console application

而且我知道我可以在项目属性中静态选择“Windows应用程序”或“控制台应用程序”.

选择“Windows应用程序”,GetConsoleWindow()始终为0,我看不到如何重用以前的控制台.

选择“控制台应用程序”,我可以重用以前的控制台,但是当在WPF窗口模式下从资源管理器启动时,会在我的WPF主窗口下创建一个控制台.

问题是:应用程序如何真正动态?在WPF窗口模式下,只有一个WPF窗口(根本没有控制台)或非UI,只有一个控制台(启动一个或新创建的控制台).

解决方法

在Winforms中它更容易,但它并不太难.

从WPF应用程序项目开始(不是具有WPF窗口的控制台应用程序项目).

在根目录中创建一个新的Program.cs类,添加以下代码:

class Program
{
    [DllImport("Kernel32")]
    public static extern void AllocConsole();

    [DllImport("Kernel32")]
    public static extern void FreeConsole();

    [DllImport("kernel32.dll")]
    static extern bool AttachConsole(uint dwProcessId);

    [STAThread]
    public static void Main(string[] args)
    {
        bool madeConsole = false;
        if (args.Length > 0 && args[0] == "console")
        {

            if (!AttachToConsole())
            {
                AllocConsole();
                Console.WriteLine("Had to create a console");
                madeConsole = true;
            }

            Console.WriteLine("Now I'm a console app!");
            Console.WriteLine("Press any key to exit");
            Console.ReadKey(true);

            if (madeConsole)
                FreeConsole();
        }
        else
        {
            WpfApplication1.App.Main();
        }
    }


    public static bool AttachToConsole()
    {
        const uint ParentProcess = 0xFFFFFFFF;
        if (!AttachConsole(ParentProcess))
            return false;

        Console.Clear();
        Console.WriteLine("Attached to console!");
        return true;
    }

}

现在您有一个控制台应用程序或WPF应用程序.在“属性”中,将启动对象设置为Program.Main方法.在上面的示例中,WpfApplication1.App.Main是旧的启动对象(在App.xaml.cs文件中定义).

编辑这个错过了关于使用现有控制台的一个要求,一旦我弄清楚如何保持在同一个控制台窗口,我就会编辑它.

New Edit Now可以使用现有的控制台!

今天关于Windows应用程序与自动完成使用UNIX机器文件和目录的选项卡应用程序自动运行什么意思的分享就到这里,希望大家有所收获,若想了解更多关于asp.net – Windows应用程序与Web应用程序开发、bash – Unix文件命名规则有效的选项卡完成?、c# – 从Windows服务启动Windows应用程序、c# – 如何动态控制台应用程序或Windows应用程序等相关知识,可以在本站进行查询。

本文标签: