start.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. const electron = require('electron');
  2. const path = require('path');
  3. const url = require('url');
  4. const ipc = electron.ipcMain;
  5. const app = electron.app;
  6. const BrowserWindow = electron.BrowserWindow;
  7. let mainWindow,BrowserHistory,BrowserFeedback;
  8. ipc.on('window-all-closed', function () {//退出
  9. app.quit();
  10. });
  11. ipc.on('hide-window', function () {//小化
  12. mainWindow.minimize();
  13. });
  14. ipc.on('show-window', function () {//最大化
  15. mainWindow.maximize();
  16. });
  17. ipc.on('orignal-window', function () {//还原
  18. mainWindow.unmaximize();
  19. });
  20. function createWindow() {
  21. mainWindow = new BrowserWindow({//游览器窗口
  22. width: 10000,
  23. height: 5000,
  24. minWidth: 800,
  25. minHeight :800,
  26. frame: false,
  27. });
  28. mainWindow.loadURL(url.format({
  29. pathname: path.join(__dirname, 'browser.html'),
  30. protocol: 'file:',
  31. slashes: true
  32. }));
  33. mainWindow.webContents.openDevTools();
  34. mainWindow.on('closed', function () {
  35. mainWindow = null
  36. });
  37. BrowserHistory = new BrowserWindow({//历史记录
  38. width: 800,
  39. frame: false
  40. })
  41. BrowserHistory.loadURL(url.format({
  42. pathname: path.join(__dirname, 'history.html'),
  43. protocol: 'file:',
  44. slashes: true
  45. }));
  46. BrowserHistory.hide();
  47. ipc.on('BrowserHistory-show-window', function () {//显示
  48. if(BrowserHistory){
  49. BrowserHistory.hide();
  50. BrowserHistory = null
  51. }
  52. BrowserHistory = new BrowserWindow({
  53. width: 800,
  54. frame: false
  55. })
  56. BrowserHistory.loadURL(url.format({
  57. pathname: path.join(__dirname, 'history.html'),
  58. protocol: 'file:',
  59. slashes: true
  60. }));
  61. BrowserHistory.show();
  62. });
  63. ipc.on('BrowserHistory-close-window', function () {//隐藏
  64. BrowserHistory.hide();
  65. BrowserHistory = null
  66. });
  67. ipc.on('BrowserHistory-hide-window', function () {//隐藏
  68. BrowserHistory.hide();
  69. BrowserHistory = null
  70. });
  71. BrowserHistory.on('closed', function () {
  72. BrowserHistory = null
  73. });
  74. BrowserFeedback = new BrowserWindow({//反馈
  75. width: 800,
  76. frame: false
  77. })
  78. BrowserFeedback.loadURL(url.format({
  79. pathname: path.join(__dirname, 'history.html'),
  80. protocol: 'file:',
  81. slashes: true
  82. }));
  83. BrowserFeedback.hide();
  84. ipc.on('BrowserFeedback-show-window', function () {//显示
  85. if(BrowserFeedback){
  86. BrowserFeedback.hide();
  87. BrowserFeedback = null
  88. }
  89. BrowserFeedback = new BrowserWindow({
  90. width: 800,
  91. frame: false
  92. })
  93. BrowserFeedback.loadURL(url.format({
  94. pathname: path.join(__dirname, 'feedback.html'),
  95. protocol: 'file:',
  96. slashes: true
  97. }));
  98. BrowserFeedback.show();
  99. });
  100. ipc.on('BrowserFeedback-close-window', function () {//隐藏
  101. BrowserFeedback.hide();
  102. BrowserFeedback = null
  103. });
  104. ipc.on('BrowserFeedback-hide-window', function () {//隐藏
  105. BrowserFeedback.hide();
  106. BrowserFeedback = null
  107. });
  108. BrowserFeedback.on('closed', function () {
  109. BrowserFeedback = null
  110. });
  111. }
  112. app.on('ready', createWindow);
  113. app.on('window-all-closed', function () {
  114. if (process.platform !== 'darwin') {
  115. app.quit()
  116. }
  117. });
  118. app.on('activate', function () {
  119. if (mainWindow === null) {
  120. createWindow()
  121. }
  122. });