Tôi đã thấy rằng Windows có thể chuyển sang giao diện bàn điều khiển rất cơ bản khi cập nhật trình điều khiển video và tôi cũng đã thấy các chương trình như Borland C++ thực hiện việc này.
Tôi thực sự muốn biết làm thế nào để làm điều này với một ứng dụng giao diện điều khiển trong C# (hoặc VB.NET nếu bạn thích), và tôi không nhớ bằng cách sử dụng P/Invoke (và tôi đặt cược tôi phải!).Bàn điều khiển toàn màn hình C#?
Trả lời
Trong các phiên bản cũ hơn của Windows, bạn có thể đặt bất kỳ bảng điều khiển nào ở chế độ toàn màn hình với Alt-Enter
(nếu tôi nhớ chính xác).
Với sự ra đời của Trình quản lý cửa sổ màn hình và bố cục toàn màn hình qua GPU trong Vista, chức năng cửa sổ bảng điều khiển toàn màn hình đã bị xóa.
(Khi cập nhật trình điều khiển đồ họa của hệ thống đồ họa đang được thiết lập lại, những gì bạn thấy không phải là một cửa sổ giao diện điều khiển, nhưng card đồ họa khởi động mặc định vào chế độ văn bản.)
Cảm ơn, đây là câu trả lời hoàn chỉnh nhất (tôi có thể nói điều đó không?) Của tất cả! – Vercas
Alt + Enter vẫn hoạt động trên cửa sổ bảng điều khiển trong Windows 10. –
Windows 7 không hỗ trợ toàn màn hình giao diện điều khiển các ứng dụng. Trên XP, bạn có thể sử dụng SetConsoleDisplayMode, bạn sẽ cần phải P/Gọi đến điều này, nhưng nó tương đối đơn giản. Tôi biết về win 7 x64 chức năng này sẽ thất bại với lỗi 120 This function is not spported on this system
Để có được bàn điều khiển, bạn có thể sử dụng một số mã từ this answer.
Trên CMD (x86, Windows 7) Tôi gặp lỗi khi trình điều khiển thiết bị không hỗ trợ tính năng này. – Vercas
Tôi có nghĩa là hệ thống, không phải trình điều khiển thiết bị ... Tôi nghĩ gì ... – Vercas
@Vercas: Thực ra, nó phụ thuộc vào thiết bị.Sự hỗ trợ hoặc thiếu nó nằm trong mã hệ điều hành, không phải trình điều khiển, nhưng các đường dẫn mã OS khác nhau được sử dụng cho các trình điều khiển hiển thị cũ (hỗ trợ hiện tại) và WDDM (không hỗ trợ toàn màn hình). –
Bạn có thể nhấp chuột phải vào bảng điều khiển của mình, nhấp vào thuộc tính và trong tùy chọn xoay, đặt thành Chế độ toàn màn hình. bạn có thể lưu các thay đổi này để duy trì.
Điều này vẫn có sẵn trên Windows 7 (và Vista)? –
Không hoạt động + Tôi đang tìm kiếm một cách có lập trình. – Vercas
@Vercas: Không hoạt động == cũng không thể hoạt động theo chương trình. –
Bạn có nghĩa là dỡ bỏ hoàn toàn GUI hoặc thay đổi độ phân giải màn hình, như khi bạn cài đặt trình điều khiển thiết bị mới và cửa sổ lên đến 800x600/8bpp, thay vì độ phân giải bình thường của bạn? Tôi không thể giúp đỡ nếu bạn muốn có một màn hình giao diện điều khiển đầy đủ, nhưng nếu bạn đang cố gắng để thay đổi độ phân giải màn hình của bạn, vv, hãy nhìn vào http://www.c-sharpcorner.com/UploadFile/GemingLeader/display-settings08262009094802AM/display-settings.aspx
Uh ... Đây là câu trả lời cho câu hỏi khác của tôi. – Vercas
Có lẽ tôi implementation here có thể giúp đỡ. Lưu ý rằng điều này sẽ không hoạt động trên các hệ thống cửa sổ thiếu hỗ trợ trình điều khiển chế độ văn bản.
using System;
using System.IO;
using System.Collections.Generic; //for dictionary
using System.Runtime.InteropServices; //for P/Invoke DLLImport
class App
{
/// <summary>
/// Contains native methods imported as unmanaged code.
/// </summary>
internal static class DllImports
{
[StructLayout(LayoutKind.Sequential)]
public struct COORD
{
public short X;
public short Y;
public COORD(short x, short y) {
this.X = x;
this.Y = y;
}
}
[DllImport("kernel32.dll")]
public static extern IntPtr GetStdHandle(int handle);
[DllImport("kernel32.dll", SetLastError = true)]
public static extern bool SetConsoleDisplayMode(
IntPtr ConsoleOutput
,uint Flags
,out COORD NewScreenBufferDimensions
);
}
/// Main App's Entry point
public static void Main (string[] args)
{
IntPtr hConsole = DllImports.GetStdHandle(-11); // get console handle
DllImports.COORD xy = new DllImports.COORD(100,100);
DllImports.SetConsoleDisplayMode(hConsole, 1, out xy); // set the console to fullscreen
//SetConsoleDisplayMode(hConsole, 2); // set the console to windowed
}
}
- 1. Làm thế nào để viết toàn bộ màn hình/ứng dụng bàn điều khiển Linux?
- 2. Bàn điều khiển C#, Console.Xóa sự cố
- 3. Tạo chế độ toàn màn hình bảng điều khiển Java
- 4. Màn hình xóa bàn điều khiển Win32 C++ mà không nhấp nháy
- 5. Chạy Chương trình Bảng điều khiển C++ ở chế độ toàn màn hình
- 6. Đầu ra bàn điều khiển màu với C++ trong Windows
- 7. Bàn điều khiển C++ Win32 Màu
- 8. Chụp màn hình của điều khiển WebBrowser
- 9. Android - buộc toàn màn hình bàn phím mềm
- 10. In tin nhắn tới bàn điều khiển từ C++ DLL
- 11. Android - Điều chỉnh màn hình khi bàn phím bật lên?
- 12. Nhập toàn bộ màn hình trong MPMoviePlayerĐiều khiển cuộc gọi của bộ điều khiểnWillDisappear and viewDidDisappear
- 13. Video HTML5 không ẩn điều khiển ở chế độ toàn màn hình trong Chrome
- 14. UIView toàn màn hình
- 15. Ngăn chặn màn hình cảm ứng ảo Bàn phím Windows trong ứng dụng toàn màn hình WPF
- 16. UIImagePickerController không toàn màn hình
- 17. C# Chụp màn hình điều khiển .net trong ứng dụng và đính kèm vào Outlook Email
- 18. Bàn điều khiển IE10 không hoạt động
- 19. Lệnh C++ popen mà không cần bàn điều khiển
- 20. Bắt đầu ra bàn điều khiển từ lọ trong C#
- 21. Cách xuất ra bàn điều khiển trong C++/Windows
- 22. Ẩn bàn điều khiển trong chức năng C system(), Win
- 23. Bàn điều khiển Supress khi gọi "hệ thống" trong C++
- 24. Đầu ra bàn điều khiển C++ trong Netbeans
- 25. Bàn điều khiển RGB cụ thể Màu văn bản C++
- 26. Viết plugin/trình điều khiển chia sẻ màn hình
- 27. bảng điều khiển màn hình Thiếu trong IntelliJ IDEA
- 28. Chạy ứng dụng bảng điều khiển trên màn hình khác
- 29. Tiện ích toàn màn hình
- 30. Tạo điều khiển toàn cảnh Screenshots
Nếu ứng dụng phải toàn màn hình, tôi sẽ xem xét việc tạo ứng dụng cửa sổ thay vì ứng dụng bảng điều khiển. Trừ khi bạn có yêu cầu nói rằng nó phải là một ứng dụng giao diện điều khiển, có thực sự là không có lý do để không đi với một cửa sổ. –
Vâng, tôi sẽ sử dụng một hình thức toàn màn hình với một điều khiển giống như bàn điều khiển. – Vercas
Cách tiếp cận của tôi hoạt động tốt như thế nào để bạn nói rằng nó không hoạt động? –