Как показать курсор ожидания с помощью C # без активной (или любой) формы Windows? - PullRequest
1 голос
/ 28 сентября 2011

Я пытался использовать этот пример кода:

private void DoShortRunningTask()
{
    using (new StWaitCursor())
    {
        Thread.Sleep(5000); // 5 sec delay. 
        .. do some work .. 
    } 
}

От: http://www.codeproject.com/KB/cpp/WaitCursor.aspx

Но это ничего не сделало для меня, так как у меня не было основной формы.Мне не нужна основная форма.Мой тип проекта C # - это Windows-приложение, но единственный графический интерфейс, который он показывает, - это сообщения об ошибках или сообщения об успехе.Есть ли способ для меня подделать существование WinForm (чтобы он существовал, но не был виден)?Должен ли курсор мыши быть над ним, чтобы появиться?

Ответы [ 3 ]

1 голос
/ 28 сентября 2011

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

Вот пример, который я только что погуглил: http://alanbondo.wordpress.com/2008/06/22/creating-a-system-tray-app-with-c/

Вы также можете показывать речевые сообщения в процессе выполнения и т. Д., Если хотите, чтобы пользователь знал, что происходит.

0 голосов
/ 28 сентября 2011

TomTom ++

Вы просто хотите изменить текущий курсор?

Попробуйте это

http://www.csharp -examples.net / песочных часов ожидания курсора /

0 голосов
/ 28 сентября 2011

Мне не нужна основная форма

Да, вы делаете. Любое взаимодействие с пользовательским интерфейсом требует формы, извините.

способ подделать существование WinForm (чтобы он существовал, но не был виден)?

Как это подделка?

Сделайте форму, сделайте ее невидимой (transaprent - проверьте все свойства класса формы, и вы ее найдете) и закончили;) Стандартный подход. Также скажите, чтобы оно не отображалось в коллекции форм внизу экрана, а сверните его, и все готово. здесь ничего не подделка.

...