⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 displayscr.pas

📁 超级播放器 -- 软件特点 -- 功能齐全 操作简便 绿色环保
💻 PAS
📖 第 1 页 / 共 2 页
字号:
begin
     checkMenuItem(GetSystemMenu(Handle,False),idMyFunc,MF_CHECKED)
end;

procedure TFrmDisplayScr.N1Click(Sender: TObject);
begin
     checkMenuItem(GetSystemMenu(Handle,False),idMyFunc,MF_UNCHECKED)

end;

procedure TFrmDisplayScr.FormMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then
  begin  //进入移动状态
       SendMessage(self.Handle,WM_LBUTTONUP,0,0);
       SendMessage(self.Handle,WM_NCLBUTTONDOWN,HTCaption,0);
  end;

end;

procedure TFrmDisplayScr.TitleBarDblClick(Sender: TObject);
begin
  if winstate=fstnormal then
  begin
       //记下初始大小
    winWidth:=self.Width ;
    winHeight:=self.Height;
    winTop:=self.Top;
    winLeft:=self.Left;
       //进入最大化
    self.Width :=screen.Width;
    self.Height :=screen.Height;
    self.Top :=0;
    self.Left :=0;

    big2.Visible :=true;
    big1.Visible :=false;
    winstate:=fstmax;
  end
  else
  begin
   //还原原来状态
    self.Top :=winTop;
    self.Left :=winLeft;
    self.Width :=winWidth;
    self.Height :=winHeight;

    big1.Visible :=true;
    big2.Visible :=false;
     winstate:=fstnormal;
  end;

end;

procedure TFrmDisplayScr.sbtnCloseClick(Sender: TObject);
begin
  close;
end;

procedure TFrmDisplayScr.sbtnSmallClick(Sender: TObject);
begin
  self.windowstate :=wsMinimized;
end;

procedure TFrmDisplayScr.TitleBarMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then
  begin  //进入移动状态
       SendMessage(self.Handle,WM_LBUTTONUP,0,0);
       SendMessage(self.Handle,WM_NCLBUTTONDOWN,HTCaption,0);
  end;

end;

procedure TFrmDisplayScr.Label3MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then
  begin  //进入改变大小状态
      SendMessage(self.Handle,WM_LBUTTONUP,0,0);
      SendMessage(self.Handle,WM_NCLBUTTONDOWN,HTBOTTOM,0);
  end;

end;

procedure TFrmDisplayScr.Label4MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then
  begin  //进入改变大小状态
      SendMessage(self.Handle,WM_LBUTTONUP,0,0);
      SendMessage(self.Handle,WM_NCLBUTTONDOWN,HTBOTTOMRIGHT,0);
  end;

end;

procedure TFrmDisplayScr.Label2MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then
  begin  //进入改变大小状态
      SendMessage(self.Handle,WM_LBUTTONUP,0,0);
      SendMessage(self.Handle,WM_NCLBUTTONDOWN,HTRIGHT,0);
  end;

end;

procedure TFrmDisplayScr.StayOnTop2Click(Sender: TObject);
begin
  if (sender as TMenuITem).Checked then
     setwindowPos(self.Handle,HWND_NOTOPMOST,0,0,0,0,SWP_NOSIZE or SWP_NOMOVE or SWP_NOACTIVATE	)
  else
     setwindowPos(self.Handle,HWND_TOPMOST,0,0,0,0,SWP_NOSIZE or SWP_NOMOVE or SWP_NOACTIVATE	);
  (sender as TMenuITem).Checked :=not (sender as TMenuITem).Checked ;

end;

procedure TFrmDisplayScr.N2Click(Sender: TObject);
var i:word;
begin
  if winstate=fstFull then
  begin
   //先正常显示
    for i:=0 to self.ControlCount -1 do
      self.Controls[i].Visible :=true;
    big1.Visible :=true;
    big2.Visible :=false;

    top :=fbTop;
    left:=fbLeft;
  end
  else if winstate =fstMax then
  begin
    top :=winTop;
    left:=winLeft;
  end;
  winstate:=fstNormal;
  mnuFullscr.Caption :='满屏显示';

  self.Width :=oldFrmWidth;
  self.Height :=oldFrmHeight;
end;

procedure TFrmDisplayScr.mnuFullscrClick(Sender: TObject);
var i:integer;
begin
  if Pos('满屏显示',(sender as TMenuItem).caption)<>0 then
  begin
     (sender as TMenuItem).caption:='正常显示'
  end
  else
  begin
     (sender as TMenuItem).caption:='满屏显示' ;
  end;
  if Pos('正常显示',(sender as TMenuItem).caption)<>0 then
  begin
    //转向满屏显示
    winstate:=fstfull;
    for i:=0 to self.ControlCount -1 do
      if (self.controls[i]<>scrPnl) then
        self.Controls[i].Visible :=false;

    fbTop := top;
    fbLeft:=Left;
    fbWidth:=Width;
    fbHeight:=Height;

    self.Top :=0;
    self.Left :=0;
    self.OnResize :=nil;
    self.Width :=screen.width;
    self.Height :=screen.Height;

    self.OnResize :=FormResize;
    FormResize( nil);
  end
  else
  begin  //转向正常显示
    winstate:=fstNormal;

    self.OnResize :=nil;
    self.Top :=fbTop;
    self.Left :=fbLeft;
    self.width:=fbwidth;
    self.Height :=fbHeight;
    self.OnResize :=formResize;
    formResize(nil);

    for i:=0 to self.ControlCount -1 do
      if (self.controls[i]<>scrPnl) then
        self.Controls[i].Visible :=true;

    big1.Visible :=true;
  end;
end;

procedure TFrmDisplayScr.Label6MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if (Button=mbLeft) then
  begin  //进入改变大小状态
      SendMessage(self.Handle,WM_LBUTTONUP,0,0);
      SendMessage(self.Handle,WM_NCLBUTTONDOWN,HTLeft,0);
  end;

end;

procedure TFrmDisplayScr.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  if MainFrm.playerState <>psClosed then
    MainFrm.closeMedia;
end;
procedure TFrmDisplayScr.WMMOVE(var Msg: TMessage);
begin
  Inherited;
  if (abs(Left-Mainfrm.Left-Mainfrm.Width) < 10) and (abs(Top-Mainfrm.Top) < 10) then // 设定移动到左上角 10 点范围内时贴到边上去
  begin
    Left := Mainfrm.Left+Mainfrm.Width;
    Top := MainFrm.Top ;
    mainfrm.linkDisplayScr:=1;
  end
  else if (abs(top+height-Mainfrm.top)<10) and (left<=mainfrm.Left+mainfrm.width) and (left+width>=mainfrm.left) then
  begin
    top :=Mainfrm.Top -height;
    mainfrm.linkDisplayScr:=2;
  end
  else
    mainfrm.linkDisplayScr:=0;
    
  Msg.Result := 0;
end;


procedure TFrmDisplayScr.N4Click(Sender: TObject);
begin
  MainFrm.PrevBtnClick(MainFrm.PrevBtn);
end;

procedure TFrmDisplayScr.N5Click(Sender: TObject);
begin
  MainFrm.NextBtnClick(MainFrm.NextBtn);
end;

procedure TFrmDisplayScr.N7Click(Sender: TObject);
begin
  mainfrm.MySetAudio((sender as TMenuItem).tag);
end;

procedure TFrmDisplayScr.FormShow(Sender: TObject);
begin
  if self.Height <Mainfrm.Top then
    self.Top := Mainfrm.Top-self.Height
  else
    self.Top :=0;
  self.Left :=(screen.width-self.Width) div 2;
end;

procedure TFrmDisplayScr.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   if (key=vk_left) and (ssCtrl in shift) then
     MainFrm.PrevBtnClick(MainFrm.PrevBtn)
  else if (key=vk_right) and (ssCtrl in shift) then
     MainFrm.NextBtnClick(MainFrm.NextBtn)
  else if (key=vk_prior) and (ssCtrl in shift) then
     MainFrm.StepBtnClick(MainFrm.backBtn)
  else if (key=vk_next) and (ssCtrl in shift) then
     MainFrm.StepBtnClick(MainFrm.stepBtn);
end;

procedure TFrmDisplayScr.N12Click(Sender: TObject);
begin
  MainFrm.BringToFront;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -