[原创]php+ajax实现模拟Win文件管理系统十一

 更新时间:2016年11月25日 17:35  点击:1815

function hidden(){


  var obj = document.getElementById(\'Layer1\');


  obj.style.display=\'none\';


  }


 function myMenuShow(obj,btn,past)


 {


 document.getElementById("subMenu").innerHTML="<li onMouseOver=\\"this.style.backgroundColor=\'#F5FBFF\'\\" onMouseOut=\\"this.style.backgroundColor=\'\'\\" onclick=\\"Createfolder();\\" >新建文件夹</li><li onMouseOver=\\"this.style.backgroundColor=\'#F5FBFF\'\\" onMouseOut=\\"this.style.backgroundColor=\'\'\\" onclick=\\"CreateText();\\" >新建文本文件</li><hr> <li onMouseOver=\\"this.style.backgroundColor=\'#F5FBFF\'\\" onMouseOut=\\"this.style.backgroundColor=\'\'\\" onclick=\\"return Copy(\'"+btn+"\',\'s\')\\">复  制</li><li onMouseOver=\\"this.style.backgroundColor=\'#F5FBFF\'\\" onMouseOut=\\"this.style.backgroundColor=\'\'\\" onclick=\\"return Copy(\'"+btn+"\',\'c\')\\">剪 切</li><li onMouseOver=\\"this.style.backgroundColor=\'#F5FBFF\'\\" onMouseOut=\\"this.style.backgroundColor=\'\'\\" onclick=\\"return Past(\'filepath\',\'"+past+"\')\\">粘  贴</li> <hr><li onMouseOver=\\"this.style.backgroundColor=\'#F5FBFF\'\\" onMouseOut=\\"this.style.backgroundColor=\'\'\\" onclick=\\"del(\'"+btn+"\');\\">删 除</li> <hr><li onMouseOver=\\"this.style.backgroundColor=\'#F5FBFF\'\\" onMouseOut=\\"this.style.backgroundColor=\'\'\\" onclick=\\"alert(\'你单击文件名就可重命名!\');\\" >重命名</li><br/>";


 ShowMenu(obj,0,0);


 return false;


 }


 document.onmousemove=hiddenSubMenu;


 attachEvent(\'onload\', loadsubMenu);// JavaScript Document

最后面就是调用函数,

再此文件管理系统也就写完了,希望能给各位有点帮助,也同时希望各位高手指点,本系统还有很多地方待修改提高了,

 下载地下:php+ajax源码


复制PHP内容到剪贴板PHP代码:

<?php
$winmain=wb_create_window(null,AppWindow,'21点游戏',WBC_CENTER,WBC_CENTER,800,495,0,0);
wb_create_control($winmain,Label,'庄家',20,15,40,30,LB_1,0,0,0);
wb_create_control($winmain,Label,'玩家',20,200,40,30,LB_2,00,0,0);
wb_create_control($winmain,Frame,'',80,40,120,150,FR_PC_1,0,0,0);
wb_create_control($winmain,Frame,'',220,40,120,150,FR_PC_2,0,0,0);
wb_create_control($winmain,Frame,'',360,40,120,150,FR_PC_3,0,0,0);
wb_create_control($winmain,Frame,'',500,40,120,150,FR_PC_4,0,0,0);
wb_create_control($winmain,Frame,'',640,40,120,150,FR_PC_5,0,0,0);
wb_create_control($winmain,Frame,'',645,230,120,150,FR_U_5,0,0,0);
wb_create_control($winmain,Frame,'',500,230,120,150,FR_U_4,0,0,0);
wb_create_control($winmain,Frame,'',360,230,120,150,FR_U_3,0,0,0);
wb_create_control($winmain,Frame,'',220,230,120,150,FR_U_2,0,0,0);
wb_create_control($winmain,Frame,'',80,230,120,150,FR_U_1,0,0,0);
wb_create_control($winmain,Label,'',35,305,25,20,LB_U_T,0,0,0);
wb_create_control($winmain,Label,'',35,110,25,20,LB_P_T,0,0,0);
wb_create_control($winmain,PushButton,'发牌',320,400,70,25,B_GO,0x00000002,0,0);
wb_create_control($winmain,PushButton,'停止',435,400,70,25,B_CHANGE,0x00000002,0,0);
wb_create_control($winmain,Label,'',110,95,60,60,LB_PC_1,0x00000800,0,0);
wb_create_control($winmain,Label,'',250,95,60,60,LB_PC_2,0x00000800,0,0);
wb_create_control($winmain,Label,'',390,95,60,60,LB_PC_3,0x00000800,0,0);
wb_create_control($winmain,Label,'',530,95,60,60,LB_PC_4,0x00000800,0,0);
wb_create_control($winmain,Label,'',670,95,60,60,LB_PC_5,0x00000800,0,0);
wb_create_control($winmain,Label,'',110,285,60,60,LB_U_1,0x00000800,0,0);
wb_create_control($winmain,Label,'',250,285,60,60,LB_U_2,0x00000800,0,0);
wb_create_control($winmain,Label,'',390,285,60,60,LB_U_3,0x00000800,0,0);
wb_create_control($winmain,Label,'',530,285,60,60,LB_U_4,0x00000800,0,0);
wb_create_control($winmain,Label,'',670,285,60,60,LB_U_5,0x00000800,0,0);
wb_create_control($winmain,Label,'',70,20,90,20,PC_MON,0,0,0);
wb_create_control($winmain,Label,'',70,205,90,20,U_MON,0,0,0);

point_include.php文件


<?php
for ($i=1;$i<=13;$i++){
switch($i){
  case 1j=1;$key='A';break;
  case 11j=10;$key='J';break;
  case 12j=10;$key='Q';break;
  case 13j=10;$key='K';break;
  default:
   $key=$j=$i;
}
$card["黑\n桃\n$key"]=$j;
$card["红\n桃\n$key"]=$j;
$card["梅\n花\n$key"]=$j;
$card["方\n片\n$key"]=$j;
}
$contorl_id=array(
'B_GO'=>1001,'B_CHANGE'=>1002,
'ME_START'=>2001,'ME_REMON'=>2002,'ME_AUTHOR'=>2003,'ME_QUIT'=>IDCLOSE,
'LB_1'=>3001,'LB_2'=>3002,'LB_U_T'=>3003,'LB_P_T'=>3004,
'PC_MON'=>3005,'U_MON'=>3006,
'LB_PC_1'=>3101,'LB_PC_2'=>3102,'LB_PC_3'=>3103,'LB_PC_4'=>3104,'LB_PC_5'=>3105,
'LB_U_1'=>3201,'LB_U_2'=>3202,'LB_U_3'=>3203,'LB_U_4'=>3204,'LB_U_5'=>3205,
'FR_PC_1'=>4001,'FR_PC_2'=>4002,'FR_PC_3'=>4003,'FR_PC_4'=>4004,'FR_PC_5'=>4005,
'FR_U_1'=>5001,'FR_U_2'=>5002,'FR_U_3'=>5003,'FR_U_4'=>5004,'FR_U_5'=>5005,
);
foreach ($contorl_id as $key=>$value){
if(!defined(strtoupper($key)))define(strtoupper($key),$value);
}
?>


21point.phpw文件


<?php
set_time_limit(0);
include_once('include/winbinder.php');
include_once('form/point_include.php');
include_once('form/21point.form.php');

class Ponit {
public $key_id;
private $user_point=10000;
private $pc_point=10000;
private $card;
private $player='user';
private $new_term=false;
private $remon=false;
public function __construct($winmain,$card){
  $f=file_get_contents('form/db.db');
  list($this->user_point,$this->pc_point)=explode('|',$f);
  $this->window=$winmain;
  $this->card=$card;
  $this->prepare();
}
private function prepare(){
  wb_set_image($this->window,'form/hyper.ico'); 
  wb_create_control($this->window,Menu,array(
  '游戏(&G)'  , null,
  array(ME_START , "开局\tCrtl+N",'','','Ctrl+N'),
  array(ME_REMON , "重计分"),
  array(ME_AUTHOR , "作者"),
  null   ,
  array(ME_QUIT , "退出\tCrtl+Q",'','','Ctrl+Q'),
  null
  ));
  wb_set_text(wb_get_control($this->window,U_MON),$this->user_point.'分');
  wb_set_text(wb_get_control($this->window,PC_MON),$this->pc_point.'分');
  $font=wb_create_font("Arial", 13, null, FTA_BOLD);
  wb_set_font(wb_get_control($this->window,LB_1),$font);
  wb_set_font(wb_get_control($this->window,LB_2),$font);
  $font=wb_create_font("Arial", 34, null, FTA_BOLD);
  for($i=1;$i<=5;$i++){
   wb_set_font(wb_get_control($this->window,(3100+$i)),$font);
   wb_set_font(wb_get_control($this->window,(3200+$i)),$font);
  }
}
private function start(){
  $this->player='user';
  $this->new_term=true;
  $this->clear();
  $this->play();
  wb_set_enabled(wb_get_control($this->window,B_GO),true);
  wb_set_enabled(wb_get_control($this->window,B_CHANGE),true);
}
private function stop(){
  wb_set_enabled(wb_get_control($this->window,B_GO),false);
  wb_set_enabled(wb_get_control($this->window,B_CHANGE),false);
}
private function change_player(){
  $this->stop();
  $this->player='pc';
  $this->play();
}
private function total($num=0,$win){
  static $u_tem,$p_tem;
  if(empty($u_tem)||empty($p_tem)||$this->remon==true){
   $u_tem=$this->user_point;
   $p_tem=$this->pc_point;
   $this->remon=false;
  }
  if(strtoupper($win)=='U'){
   $u_tem+=$num;
   $p_tem-=$num;
  }else{
   $u_tem-=$num;
   $p_tem+=$num;
  }
  $this->user_point=$u_tem;
  $this->pc_point=$p_tem;
  wb_set_text(wb_get_control($this->window,U_MON),$this->user_point.'分');
  wb_set_text(wb_get_control($this->window,PC_MON),$this->pc_point.'分');
  $f=fopen('form/db.db','wb');
  fwrite($f,$this->user_point."|".$this->pc_point);
  fclose($f);
}
private function remon(){
  $this->remon=true;
  $this->user_point=10000;
  $this->pc_point=10000;
  wb_set_text(wb_get_control($this->window,U_MON),$this->user_point.'分');
  wb_set_text(wb_get_control($this->window,PC_MON),$this->pc_point.'分');
  $f=fopen('form/db.db','wb');
  fwrite($f,$this->user_point."|".$this->pc_point);
  fclose($f);
}
private function clear(){
  wb_set_text(wb_get_control($this->window,LB_U_T),'');
  wb_set_text(wb_get_control($this->window,LB_P_T),'');
  for($i=1;$i<=5;$i++){
   wb_set_text(wb_get_control($this->window,(4000+$i)),'');
   wb_set_text(wb_get_control($this->window,(5000+$i)),'');
   wb_set_text(wb_get_control($this->window,(3100+$i)),'');
   wb_set_text(wb_get_control($this->window,(3200+$i)),'');
  }
}
private function play(){
  static $card_tem=array(),$i=0,$j=0,$user_total=0,$pc_total=0;
  if($this->new_term==true){
   $card_tem=$this->card;
   $this->new_term=false;
   $user_total=0;
   $pc_total=0;
   $i=0;$j=0;
  }
  if($this->player=='user'){
   $i++;
   $card_key=array_rand($card_tem);
   $card_value=$card_tem[$card_key];
   $user_total+=$card_value;
   wb_set_text(wb_get_control($this->window,LB_U_T),$user_total.'点');
   wb_set_text(wb_get_control($this->window,(5000+$i)),$card_key);
   wb_set_text(wb_get_control($this->window,(3200+$i)),$card_value);
   if($i>=5 && $user_total<=21){
    $this->total(20,'U');
    $sel=wb_message_box($this->window,"恭喜你,5张全小,玩家获胜!\n您还想继续玩吗?",'胜利',WBC_YESNO);
    $sel==1?$this->start():$this->stop();
   }elseif($user_total>21){
    $this->total(20,'P');
    $sel=wb_message_box($this->window,"真不幸,超过21点,庄家获胜!\n您还想继续玩吗?",'失败',WBC_YESNO);
    $sel==1?$this->start():$this->stop();
   }
  }else{
   $j++;
   $card_key=array_rand($card_tem);
   $card_value=$card_tem[$card_key];
   $pc_total+=$card_value;
   wb_set_text(wb_get_control($this->window,LB_P_T),$pc_total.'点');
   wb_set_text(wb_get_control($this->window,(4000+$j)),$card_key);
   wb_set_text(wb_get_control($this->window,(3100+$j)),$card_value);
   if($j>=5 && $pc_total<=21){
    $this->total(20,'P');
    $sel=wb_message_box($this->window,"庄家5张全小,庄家获胜!\n您还想继续玩吗?",'失败',WBC_YESNO);
    $sel==1?$this->start():$this->stop();
   }elseif($pc_total>21){
    if( $pc_total-$card_value<$user_total){
     $this->total(20,'U');
     $sel=wb_message_box($this->window,"恭喜你,庄家点数超过21点,玩家获胜!\n您还想继续玩吗?",'胜利',WBC_YESNO);
     $sel==1?$this->start():$this->stop();
    }else{
     $pc_total=$pc_total-$card_value;
     wb_set_text(wb_get_control($this->window,LB_P_T),$pc_total.'点');
     wb_set_text(wb_get_control($this->window,(4000+$j)),'');
     wb_set_text(wb_get_control($this->window,(3100+$j)),'');
     if($pc_total>=$user_total){
      $this->total(20,'P');
      $msg=($pc_total==$user_total)?"双方点数一样,庄家获胜!\n您还想继续玩吗?":"庄家点数比你大,庄稼获胜!\n您还想继续玩吗?";
      $sel=wb_message_box($this->window,$msg,'失败',WBC_YESNO);
      $sel==1?$this->start():$this->stop();
     }else{
      $this->total(20,'U');
      $sel=wb_message_box($this->window,"恭喜你,庄家点数比你小,玩家获胜!\n您还想继续玩吗?",'胜利',WBC_YESNO);
      $sel==1?$this->start():$this->stop();
     }
    }
   }else{
    usleep(800000);
    $this->play();
   }
  }
  unset($card_tem[$card_key]);
}

private function author(){
  $inf="大家好,偶是machine_马,\n\n这是我人生中的第一个桌面应用程序,\n\n做得很烂,大家见笑了,哈哈哈^_^。\n\n\n\n\t\t作者:machine_马";
  $author_window=wb_create_window($this->window,ModalDialog,'作者简介',WBC_CENTER, WBC_CENTER, 360, 180, 0x00000000, 0);
  wb_set_handler($author_window,'author_handler');
  $image=wb_create_control($author_window,Frame,'123',0,0,128,144,110,WBC_IMAGE);
  wb_create_control($author_window,Label,$inf,140,20,200,150,120,WBC_IMAGE);
  wb_set_image($image, 'form/author.bmp', NOCOLOR);
}
public function main(){
  switch ($this->key_id){
   case IDCLOSE:
    wb_destroy_window($this->window);    break;
   case ME_START:
    $this->start();         break;
   case ME_AUTHOR:
    $this->author();        break;
   case B_GO:
    $this->play();         break;
   case B_CHANGE:
    $this->change_player();       break;
   case ME_REMON:
    $this->remon();         break;
  }
}
}
$wbd=new Ponit($winmain,$card);
wb_set_handler($winmain,'go_to');
wb_main_loop();
function go_to($window,$id){
global $wbd;
$wbd->key_id=$id;
return $wbd->main();
}
function author_handler($this_window,$id){
switch($id){
  case IDCLOSE:
   wb_destroy_window($this_window);
}
}
?>

 

 

 function Createfolder(){//创建文件夹


  document.getElementById('t').style.display='block';


 }

 function Copy(path,tage){//复制文件


  var time  = new Date();


  var filepath ="filepath";


  time.setTime(time.getTime()+60000);


  if(tage == 'c'){


   document.getElementById(path).style.filter = "Alpha(Opacity=50,style=0);";//设置透明度让用户感觉是文件被剪切了,


   path=path+"|";


   }


  document.cookie = filepath+"="+path+"; expires="+time.toGMTString()+"; path=/";//由于要用到全局变量所以用了cookie保存功能,


      


 }


 


 function Past(cookname,currentpath){//取得剪板中的文件 


  if(cookname == "" ){return false;}   


  var cookies  = document.cookie;


  if(cookies == ""){ alert("剪切贴为空!"); return false; }


  var arrar  = cookies.split("; ");


  for(var i=0;i<=arrar.length-1;i++){


   if( arrar[i].indexOf(cookname)!= -1 ){


    returnvalue=arrar[i].split("=");


    Pastfile(returnvalue[1],currentpath);


   }


  }


  


 }


 


 function Pastfile(p_file,p_path){// 粘贴文件


  CreateAjax();


  var name=p_file.substring(p_file.lastIndexOf("/")+1);


  var url="rename.php?path="+encodeURI(p_path.replace("/","\/"))+"&nname="+name+"&copypath="+p_file+"&action=past&rd="+Math.random();


  Senddata('GET',url,Pastreturn,'');


  


 }


 


 function Pastreturn(){  


  if(xmlhttp.readystate == 4 || xmlhttp.status == 200){


   window.location.reload();


  }


 }


 

//

本站原创:www.111cn.net

作者:drise1

QQ:271728967

//

接上面的.
 function Senddata(method,url,ReturnValue,Action){  //保存数据

   xmlhttp.open(method,url,true); 

   xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  
   xmlhttp.setRequestHeader("Cache-Control","no-cache"); //不缓存

   if(ReturnValue !=null){

   xmlhttp.onreadystatechange=ReturnValue;

   }   

   xmlhttp.send(null);
   if(Action == 'mkdir')  //如果是创建文件夹就刷新窗口
   {
    window.location.reload();


   } 

 }


 function ReturnValue(){//返回值

  if(xmlhttp.readystate != 4 || xmlhttp.status != 200){
   document.getElementById("t0").innerHTML="<div id='info' style='position:absolute;  height:20px; z-index:1; left: 245px; top: 121px;display:block'>正在发送...</div>";
 }

  if( xmlhttp.readystate == 4 || xmlhttp.status == 200 ){

   document.getElementById("t0").innerHTML="<div id='info' style='position:absolute;  height:20px; z-index:1; left: 245px; top: 121px;display:block '>"+xmlhttp.responseText+"</div>";
 } 

 setInterval("func()",3000);//设置3000秒延迟
 }

 function func(){
  ob=document.getElementById('info');

    ob.style.display = 'none';

 }

下面为删除

 function del(obj){  


  if(confirm("确实要删除\""+obj+"\"吗?","","")){   


   CreateAjax();   


   var Delurl="rename.php?path="+encodeURI(obj.replace("/","\/"))+"&action=del&rd="+Math.random();


    xmlhttp.open("GET",Delurl,true);   


    xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");   


    xmlhttp.setRequestHeader("Cache-Control","no-cache");


    xmlhttp.onreadystatechange=function(){


     if (xmlhttp.readystate == 4 || xmlhttp.status == 200){ 


      var value=xmlhttp.responseText;


     if( value =='t' ){


      document.getElementById(obj).style.display="none";


     }else if( value =='fo'){


      alert("操作失败,请查看权限或文件夹不为空!foss!");


     }else if( value =="ff"){


      alert("操作失败,请查看权限!");


     }else{


      alert("操作失败,请查看权限或文件夹不为空!!");


     } 


     


    }


    }


    xmlhttp.send(null);


   }


 } 


  

这段时间比较忙所以段了一段时间,今天抽点时间把它写完,下面我继续讲js.js文件重命名函数

 function edit(e,path){


  var text=e.innerHTML;


  var eT=document.createElement("input");//这里是根据用户单击情况重写文件名


  e.innerHTML="";


  e.appendChild(eT);


 eT.value=text;


  eT.select();


  e.onclick="";


  eT.onblur=function(){        


  CreateAjax();


  if(text == this.value){


    e.innerHTML=this.value;


    e.onclick=function(){edit(this,path)};


    return false;


  }else{  


    e.innerHTML=this.value;


    Re_name(path,this.value,e);   


    e.onclick=function(){edit(this,path)};


  }


  };  


 }

上面了一dom+JS对文件进行完成,操作.

 function CreateAjax(){//这个函数就不多说了,己经讲过多次了.


  try { xmlhttp = new XMLHttpRequest();}


   catch (e){


  try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");}


   catch (e2){


  try { xmlhttp = new ActiveXObject("MSXML2.XMLHTTP"); }


   catch(e3){ xmlhttp = false; }


  }


  }          


  if( !xmlhttp){alert('对不起,你正在使用的浏览不支持AJAX!');return false;}


  }

function Re_name(o_name,n_name,e){  //这里重命名了.

   var name=o_name.replace(/.*\/(.+)$/i,"$1");

   if(name.match(/^\w{1,255}\.\w{1,8}$/i)){//用正则判断文件名的合法性.

   if(!n_name.match(/^\w{1,250}\.\w{1,8}$/i)){
    
     e.innerHTML=name;

     document.getElementById("t").innerHTML="<div id='info' style='position:absolute;  height:20px; z-index:1; left: 245px; top: 121px;display:block'>对不起,不能修改文件的扩展名...</div>";
         
     setInterval("func()",3000);  
     
     return false;

   }

   }else if(name.match(/^\w{1,255}$/i)){

    if(!n_name.match(/^\w{1,250}$/i)){

     e.innerHTML=name;
     
     document.getElementById("t").innerHTML="<div id='info' style='position:absolute;  height:20px; z-index:1; left: 245px; top: 121px;display:block'>对不起,不能把文件夹重命名为文件名...</div>";

     setInterval("func()",3000);
     return false;

   }

   }else{
      alert('非法操作');

     e.innerHTML=name;

     return false;
   }
   var url="rename.php?path="+encodeURI(o_name.replace("/","\/"))+"&nname="+encodeURI(n_name)+"&rd="+Math.random();

   Senddata('GET',url,ReturnValue,null); //了送给rename.php


 }
 

 

[!--infotagslink--]

相关文章

  • python实现学生通讯录管理系统

    这篇文章主要为大家详细介绍了python实现学生通讯录管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-25
  • 护卫神 主机管理系统使用说明(MSSQL管理)

    护卫神·主机管理系统该版本支持在Windows Server 200320082012,含32位和64位,直接开设配置WEB站、FTP站,以及SQL Server和MySQL,是您开设和管理虚拟主机的绝好帮手。但是对于新用户可能在使用上有一些困难,因此请仔细阅读如下说明文档...2016-01-27
  • 深入C# 内存管理以及优化的方法详解

    本篇文章是对C#中内存管理以及优化的方法进行了详细的分析介绍,需要的朋友参考下...2020-06-25
  • 详解swift中xcworkspace多项目管理

    给大家详细讲解了IOS开发中swift语言xcworkspace多项目管理的方法和介绍,一起参考一下。...2020-06-30
  • js实现车辆管理系统

    这篇文章主要为大家详细介绍了js实现车辆管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-08-26
  • php需登录的文件上传管理系统

    本文给大家介绍一个不错的需要登录的php 文件上传管理系统,功能简单有需要了解的同学可参考。 代码如下<&#63;php$admin_pw="admin";//管理密码$uploaddir="upload";//上传目录session_start();if($_GET['action']=="g...2015-10-30
  • thinkphp自定义权限管理之名称判断方法

    下面小编就为大家带来一篇thinkphp自定义权限管理之名称判断方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2017-04-03
  • C++学生信息管理系统

    这篇文章主要为大家想详细介绍了C++学生信息管理系统的实现代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-04-25
  • jQuery技巧之让任何组件都支持类似DOM的事件管理

    这篇文章主要介绍了jQuery技巧之让任何组件都支持类似DOM的事件管理 的相关资料,需要的朋友可以参考下...2016-04-06
  • C语言学生成绩管理系统小设计

    这篇文章主要为大家详细介绍了C语言学生成绩管理系统小设计,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-04-25
  • C#毕业设计之Winform零压健身房管理系统

    本文介绍了个人的《零压健身房管理系统(扁平化)》的基本流程和功能点的介绍,虚心接受各位的意见,欢迎在提出宝贵的意见,大家一起探讨学习...2021-09-26
  • vue前端开发辅助函数状态管理详解示例

    vue的应用状态管理提供了mapState、mapGetters、mapMutations、mapActions四个辅助函数,所谓的辅助函数分别对State、Getters、Mutations、Actions在完成状态的使用进行简化...2021-10-10
  • 如何管理Vue中的缓存页面

    这篇文章主要介绍了如何管理Vue中的缓存页面,帮助大家更好的理解和学习使用vue框架,感兴趣的朋友可以了解下...2021-02-06
  • C#实现微信公众号会员卡管理的示例代码

    这篇文章主要介绍了C#实现微信公众号会员卡管理的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
  • C++顺序表实现图书管理系统

    这篇文章主要为大家详细介绍了C++顺序表实现图书管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-10-13
  • 基于python实现银行管理系统

    这篇文章主要介绍了基于python实现银行管理系统,文中有非常详细的代码示例,对正在学习python项目制作的小伙伴们有很好的帮助,需要的朋友可以参考下...2021-04-19
  • 40行代码把Vue3的响应式集成进React做状态管理

    这篇文章主要介绍了40行代码把Vue3的响应式集成进React做状态管理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-05-20
  • 详解Java如何使用集合来实现一个客户信息管理系统

    读万卷书不如行万里路,只学书上的理论是远远不够的,只有在实战中才能获得能力的提升,本篇文章手把手带你用Java 集合实现一个客户信息管理系统,大家可以在过程中查缺补漏,提升水平...2021-11-11
  • [原创]php+ajax实现模拟Win文件管理系统五

    [原创]php+ajax实现模拟Win文件管理系统 // 本教程由本站原创,转载请注明来处 作者:www.111cn.net 邮箱:drise@163.com QQ:271728967 // 就是deldir()函数了这个函数的...2016-11-25
  • C语言实现学生学籍管理系统

    这篇文章主要为大家详细介绍了C语言实现学生学籍管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-04-25