protected XingKongWindow GetXingKongWindow(bool forceRefresh = false) { if (window == null || forceRefresh) { graphics = CreateGraphics(); window = new XingKongWindow(); window.Name = this.Name; foreach (var control in this.Controls) { IDrawable xkControl = getXingKongControls(control); if (xkControl != null) { window.AddChild(xkControl); } } } return(window); }
private void Keyboard_KeyPressed(Keys pressedKey) { if (pressedKey <= Keys.Escape) { if (pressedKey != Keys.Enter) { if (pressedKey == Keys.Escape) { this.LogData("inPicViewMode: " + (this.inPicViewMode ? "true" : "false")); if (this.inPicViewMode) { this.inPicViewMode = false; XingKongScreen.ClearScreen(); this.currentWindow.HardworkDraw(); XingKongScreen.FreshScreen(); } else { this.Suspend(); this.Quit(); } } } else if (!this.inPicViewMode) { XingKongImageBox control = new XingKongImageBox(); string data = Path.Combine(this.appPath, this.lbPicList.Items[this.lbPicList.SelectedIndex]); this.LogData(data); ImageHelper.Size size = ImageHelper.getPictureSize(data); this.LogData(string.Format("Width:{0} Height:{1}", size.Width, size.Height)); if ((size.Height > 600) || (size.Width > 800)) { Bitmap pic = ImageHelper.Scale(new Bitmap(data), 600, 800); control.LoadPicture(pic); } else { control.LoadPicture(data); } control.Name = "imageBox1"; control.Left = (800 - control.Width) / 2; control.Top = (600 - control.Height) / 2; //control.SkipPreProceed = true; XingKongWindow window1 = new XingKongWindow(); window1.AddChild(control); this.inPicViewMode = true; XingKongScreen.ClearScreen(); window1.Draw(); XingKongScreen.FreshScreen(); } } else { if (pressedKey != Keys.Up) { if (pressedKey != Keys.Down) { return; } } else { if (!this.inPicViewMode) { this.lbPicList.SelectPrevious(); this.lbPicList.Draw(); XingKongScreen.FreshScreen(); } return; } if (!this.inPicViewMode) { this.lbPicList.SelectNext(); this.lbPicList.Draw(); XingKongScreen.FreshScreen(); } } }