ConsoleExtra

C# .NET Formuláře Windows Forms ConsoleExtra

ONEbit hosting Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem. Vydávání, hosting a aktualizace umožňují jeho sponzoři.

Dobrý den, plánoval jsem vydat tuto knihovnu až s prohlížečem LitheDoe, ale nějak se mi jeho vývoj protáhl, tak vycházím prvně s touto knihovnou. Příklad použití:

using ConsoleExtra.Controls;
using ConsoleExtra;
using System;

namespace LitheDoe
{
        static class MainClass
        {
                public static void Main (string[] args)
                {
                        Console.Title = "LitheDoe";

                        Window mainWindow = new Window()
                        {
                                Title = "LitheDoe",
                                IgnoredCommands = "forms links tabs close form"
                        };

                        mainWindow.KeysActions.Add(ConsoleKey.PageUp, delegate
                        {
                                if (mainWindow.ActiveControl() is BrowserWindow)
                                        ((BrowserWindow)mainWindow.ActiveControl()).UpDownMove(VerticalMove.Up, Console.WindowHeight);
                        });

                        mainWindow.KeysActions.Add(ConsoleKey.PageDown, delegate
                        {
                                if (mainWindow.ActiveControl() is BrowserWindow)
                                        ((BrowserWindow)mainWindow.ActiveControl()).UpDownMove(VerticalMove.Down, Console.WindowHeight);
                        });

                        mainWindow.Controls.Add(new BrowserWindow(mainWindow), false);

                        mainWindow.Run();
                }
        }
}

Takto pustíte hlavní okno tohoto UI. Ale přesto je na něm závislý jedině Control BrowserWindow. Ostatek je plně objektový - použitelný kdekoliv a kdykoliv. Napsal jsem Controly jen ty, které byly potřeba - každý další si již uděláte zděděním a přidáním funkce.

Obsah:

  • Window,
  • BrowserWindow
  • IControl
  • ControlCollection
  • TextArea
  • MessageBox
  • + Různé pomocné objekty.

Všechny příkazy jsou nezávislé na velikosti písmen.

V prvním řádku zadáváte příkazy - klávesou Enter je klasicky odesíláte. Mezi hlavní ovládání se řadí tlačítko Tab - kterým přepínáte Controly dopředu. Posun opačným směrem provedete klávesou F2. V textu se pohybujete šipkami vertikálního směru - v nastavitelné rychlosti, která je brána spíše jako menší, oproti tomu klávesami PageUp/Down se posunete o celou stránku. Nastavení rychlosti scrollování proběhne příkazem "speed hodnota". (speed 10)

Náhled

Okenní rozhraní GUI v konzoli

 

Stáhnout

Staženo 306x (76.27 kB)
Aplikace je včetně zdrojových kódů v jazyce C#

 

 

Článek pro vás napsal matesax
Avatar
Jak se ti líbí článek?
1 hlasů
Aktivity (1)

 

 

Komentáře

Avatar
David Čápka
Tým ITnetwork
Avatar
David Čápka:5.2.2013 21:44

To jsi dělal v Monu?

Odpovědět 5.2.2013 21:44
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
matesax
Redaktor
Avatar
Odpovídá na David Čápka
matesax:5.2.2013 21:54

Ano - proč? :)

 
Odpovědět 5.2.2013 21:54
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na matesax
David Čápka:6.2.2013 9:33

Zaujalo mne že je to v C# a viděl jsem okno Linuxu :P

Odpovědět 6.2.2013 9:33
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:6.2.2013 9:39

Také jsem si v Monu vyzkoušel pár věcí, dokonce jsem si dal kompilátor i do centrálního Makefile, ale nějak zvlášť mě to neoslovilo. Na spoustu aplikací se dá v Linuxu použít velké množství jednodušších nástrojů, ve kterých se to dělá mnohem pohodlněji.

Odpovědět 6.2.2013 9:39
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
O.S.DV.F
Člen
Avatar
Odpovídá na matesax
O.S.DV.F:30.8.2015 18:55

Mně se podařilo v monu spustit c# aplikaci na androidu. :-) Pomocí plikace Debian noroot.

Odpovědět 30.8.2015 18:55
Jo! Zkompilovalo se to!
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.