首页 > 其他分享 >VUE0003:Naive UI库:滑动条,单选,多选组件

VUE0003:Naive UI库:滑动条,单选,多选组件

时间:2024-09-07 10:46:30浏览次数:13  
标签:显示 VUE0003 多选 Naive 模式 单选 组件 滑动

1,滑动条,单选,多选组件

 

<template>
  <n-scrollbar class="show-scrollbar">
    <n-space class="map-setting" vertical>

      <n-space style="flex-flow: row; align-items: center;">

        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;" >加载比例</n-text>
        <n-slider
          style="padding: 8px; width: 160px;height: 28px;align-content: center;border-radius: 4px;background-color: #2080F0;"
          :min="1"
          :step="1"
          :max="maxPointNum"
          @dragend="handleDragSaveSetting"
          v-model:value="mapDrawingStore.mapSetting.pointNum"/>
        <n-input-number
          :min="1"
          :max="maxPointNum"
          :show-button="false"
          size="small"
          style="width: 80px; color: #fff;"
          v-model:value="mapDrawingStore.mapSetting.pointNum"
          @blur="handleDragSaveSetting">
          <template #suffix>万</template>
        </n-input-number>
        
      </n-space>

      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">控制模式</n-text>
        <n-radio-group v-model:value="mapDrawingStore.mapSetting.control">
          <n-space style="gap: 1px 1px;">
            <n-radio-button class="radio-btn" style="width: 80px;" value="orbit">轨道</n-radio-button>
            <n-radio-button class="radio-btn" style="width: 80px;" value="fly">飞行</n-radio-button>
          </n-space>
        </n-radio-group>
      </n-space>


      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">显示质量</n-text>
        <n-radio-group v-model:value="mapDrawingStore.mapSetting.quality" @update:value="handleDragSaveSetting">
          <n-space style="gap: 1px 1px;">
            <n-radio-button class="radio-btn" style="width: 80px;" value="low">低质量</n-radio-button>
            <n-radio-button class="radio-btn" style="width: 80px;" value="height">高质量</n-radio-button>
          </n-space>
        </n-radio-group>
      </n-space>


      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">显示内容</n-text>
        <n-space style="gap: 1px 1px;">
          <n-button
            v-for="(item, index) of showOptions"
            :key="'showContent' + index"
            style="width: 60px; height: 30px;"
            :type="item.active ? 'primary' : ''"
            @click="handleVisible(item)">
            {{ item.label }}
          </n-button>
        </n-space>
      </n-space>


      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">显示模式</n-text>
        <n-radio-group v-model:value="mapDrawingStore.mapSetting.cameraMode">
          <n-space style="gap: 1px 1px;">
            <n-radio-button class="radio-btn" style="width: 80px;" value="o">正交</n-radio-button>
            <n-radio-button class="radio-btn" style="width: 80px;" value="p">透视</n-radio-button>
          </n-space>
        </n-radio-group>
      </n-space>


      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">渲染模式</n-text>
        <n-radio-group v-model:value="mapDrawingStore.mapSetting.cameraMode">
          <n-space style="gap: 1px 1px;">
            <n-radio-button class="radio-btn" style="width: 80px;" value="o">表面</n-radio-button>
            <n-radio-button class="radio-btn" style="width: 80px;" value="p">XRAY</n-radio-button>
          </n-space>
        </n-radio-group>
      </n-space>


      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">着色模式</n-text>
        <n-radio-group v-model:value="mapDrawingStore.mapSetting.showColor">
          <n-space style="gap: 1px 1px;">
            <n-radio-button class="radio-btn" style="width: 80px;" value="rgb">RGB</n-radio-button>
            <n-radio-button class="radio-btn" style="width: 80px;" value="color">单色</n-radio-button>
          </n-space>
        </n-radio-group>
      </n-space>


      <n-space style="flex-flow: row; align-items: center;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">点云大小</n-text>
        <n-slider 
        style="padding: 8px; width: 160px;height: 28px;align-content: center;border-radius: 4px;background-color: #2080F0;"
        :min="0.1" 
        :max="10" 
        :step="0.01" 
        v-model:value="mapDrawingStore.mapSetting.pointCloudSize"/>
        <n-input-number
          :min="0.1"
          :max="10"
          :step="0.01"
          size="small"
          :show-button="false"
          style="width: 80px; color: #fff"
          v-model:value="mapDrawingStore.mapSetting.pointCloudSize">
        </n-input-number>
      </n-space>



      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">大小类型</n-text>
        <n-radio-group v-model:value="mapDrawingStore.mapSetting.showColor">
          <n-space style="gap: 1px 1px;">
            <n-radio-button class="radio-btn" style="width: 80px;" value="rgb">固定</n-radio-button>
            <n-radio-button class="radio-btn" style="width: 80px;" value="color">衰减</n-radio-button>
            <n-radio-button class="radio-btn" style="width: 80px;" value="rgb">自适应</n-radio-button>
          </n-space>
        </n-radio-group>
      </n-space>

      <n-divider style="margin-top: 24px; width: 330px; " />

      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">透明模式</n-text>
        <n-radio-group v-model:value="mapDrawingStore.mapSetting.showColor">
          <n-space style="gap: 1px 1px;">
            <n-radio-button class="radio-btn" style="width: 80px;" value="rgb">自动</n-radio-button>
            <n-radio-button class="radio-btn" style="width: 80px;" value="color">手动</n-radio-button>
          </n-space>
        </n-radio-group>
      </n-space>


      <n-space style="flex-flow: row; align-items: center;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;" >透明调节</n-text>
        <n-slider 
          style="padding: 8px; width: 160px;height: 28px;align-content: center;border-radius: 4px;background-color: #2080F0;"
          :min="0" 
          :max="1" 
          :step="0.01" 
          v-model:value="mapDrawingStore.mapSetting.pointCloudOpacity" />
        <n-input-number
          :min="0"
          :max="1"
          :step="0.01"
          size="small"
          :show-button="false"
          style="width: 80px; color: #fff"
          v-model:value="mapDrawingStore.mapSetting.pointCloudOpacity">
        </n-input-number>
      </n-space>

      <n-divider style="margin-top: 24px; width: 330px; " />


      <n-space style="flex-flow: row; align-items: center;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">显示长度</n-text>
        <n-slider
          style="padding: 8px; width: 160px;height: 28px;align-content: center;border-radius: 4px;background-color: #2080F0;"
          :min="0"
          :step="0.01"
          @dragend="handleDragSaveSetting"
          :max="mapDrawingStore.mapSetting.maxShowHieght"
          v-model:value="mapDrawingStore.mapSetting.showHeight"/>
        <n-input-number
          :min="0"
          :step="0.01"
          :show-button="false"
          size="small"
          style="width: 80px; color: #fff"
          :max="mapDrawingStore.mapSetting.maxShowHieght"
          v-model:value="mapDrawingStore.mapSetting.showHeight"
          @blur="handleDragSaveSetting">
          <template #suffix>米</template>
        </n-input-number>
      </n-space>

      <n-space style="flex-flow: row; align-items: center;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">显示宽度</n-text>
        <n-slider
          style="padding: 8px; width: 160px;height: 28px;align-content: center;border-radius: 4px;background-color: #2080F0;"
          :min="0"
          :step="0.01"
          @dragend="handleDragSaveSetting"
          :max="mapDrawingStore.mapSetting.maxShowHieght"
          v-model:value="mapDrawingStore.mapSetting.showHeight"/>
        <n-input-number
          :min="0"
          :step="0.01"
          :show-button="false"
          size="small"
          style="width: 80px; color: #fff"
          :max="mapDrawingStore.mapSetting.maxShowHieght"
          v-model:value="mapDrawingStore.mapSetting.showHeight"
          @blur="handleDragSaveSetting">
          <template #suffix>米</template>
        </n-input-number>
      </n-space>


      <n-space style="flex-flow: row; align-items: center;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">显示高度</n-text>
        <n-slider
          style="padding: 8px; width: 160px;height: 28px;align-content: center;border-radius: 4px;background-color: #2080F0;"
          :min="0"
          :step="0.01"
          @dragend="handleDragSaveSetting"
          :max="mapDrawingStore.mapSetting.maxShowHieght"
          v-model:value="mapDrawingStore.mapSetting.showHeight"/>
        <n-input-number
          :min="0"
          :step="0.01"
          :show-button="false"
          size="small"
          style="width: 80px; color: #fff"
          :max="mapDrawingStore.mapSetting.maxShowHieght"
          v-model:value="mapDrawingStore.mapSetting.showHeight"
          @blur="handleDragSaveSetting">
          <template #suffix>米</template>
        </n-input-number>
      </n-space>

      <n-divider style="margin-top: 24px; width: 330px; " />

      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">深度增强</n-text>
        <n-space style="gap: 1px 1px;">
          <n-button style="width: 26px; height: 26px;"></n-button>
        </n-space>
      </n-space>

      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">三窗视图</n-text>
        <n-space style="gap: 1px 1px;">
          <n-button style="width: 26px; height: 26px;"></n-button>
        </n-space>
      </n-space>

      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">视角控件</n-text>
        <n-space style="gap: 1px 1px;">
          <n-button style="width: 26px; height: 26px;"></n-button>
        </n-space>
      </n-space>

      <n-space style="flex-flow: row; align-items: center; width: 340px;">
        <n-text class="color-white" style="width: 60px; display: flex; font-size: 15px;">状态展示</n-text>
        <n-space style="gap: 1px 1px;">
          <n-button style="width: 26px; height: 26px;"></n-button>
        </n-space>
      </n-space>


      <!-- <div class="close" @click="handleClose">
        <svg-icon local-icon="map-setting-close"></svg-icon>
      </div> -->
    </n-space>
  </n-scrollbar>
</template>

 

标签:显示,VUE0003,多选,Naive,模式,单选,组件,滑动
From: https://www.cnblogs.com/eliteboy/p/18401427

相关文章

  • 解析NaiveUiAdmin的vue开源项目(二)
     书接上回 解析NaiveUiAdmin的vue开源项目(一)-CSDN博客本章我们来看until下的包 src/utils/http/axios/Axios.tsimporttype{AxiosRequestConfig,AxiosInstance,AxiosResponse}from'axios';importaxiosfrom'axios';import{AxiosCanceler}from'./axio......
  • 如何在若依添加菜单选项
    在若依框架里面自己添加菜单和菜单选项点进系统管理再点击菜单管理在这里我们先创建一个菜单我们在这里做自己的菜单选项(这里的路由地址,后面会用到)然后我们返回IDEA创建对应的文件夹和包然后点击router下面的index.js进行路由配置到这里就结束,写这些文章只是为了帮......
  • qt之QTableview右击显示菜单选项
     由于上下文菜单添加的action后右击鼠标也会触发QAction的triggered信号,所以添加了事件过滤,并且安装给QMenu的实列化。(代码粘贴复制到vs即可运行)file.h--------------------------------------------------------------------------------------------------#include<QtWidge......
  • 大模型 | RAG 架构设计三阶段:Naive RAG 架构设计、Advanced RAG 架构设计、Agentic RA
    第一阶段:NaiveRAG架构设计大型语言模型(LLMs)虽然展现出卓越的性能,但在处理特定领域或知识密集型任务时,存在一些挑战,比如:产生虚假信息、知识陈旧以及推理过程的非透明性和不可追溯性。RAG技术作为一种有希望的解决方案,通过融合外部数据库的知识,有效应对了这些问题。它显著......
  • JavaFX单选按钮
    单选按钮通常组合在一起,以便用户进行单选,即用户只能在单选按钮列表中选择一个项目。例如,当选择鞋子尺寸时,我们通常从列表中选择一个尺寸。单选按钮只能执行:选择或取消选择。以下代码显示,当放置在ToggleGroup中时,只能选择一个RadioButton。importjavafx.application.Applic......
  • 复选框单选
     constlastDataHandle=ref(null);//上次选择的dataHandle值constdataHandle:any=ref([]);constdataHandleALLList=[{label:'无',value:0},{label:'上传照片',value:1},{label:'二维建模',value:2},];//单选function......
  • 基础组件:单选开关和复选框
    一、简介Material组件库中提供了Material风格的单选开关Switch和复选框Checkbox,虽然它们都是继承自StatefulWidget,但它们本身不会保存当前选中状态,选中状态都是由父组件来管理的。当Switch或Checkbox被点击时,会触发它们的onChanged回调,我们可以在此回调中处理选中状态改变逻辑......
  • img_gray_naive 中 naive 的字解
    在变量名img_gray_naive中,"naive"的中文含义通常为“朴素的”、“简单的”或“基础的”。在编程和算法的上下文中,naive一般用来描述一种不复杂、直接、基础但通常有效的实现方式。具体含义解释:朴素的:naive表示没有使用任何复杂的优化或高级技巧,直接按照最基本的思路......
  • RHEL 9中,开机看不到菜单选项,如何解决?
    记一个小方法在使用RHEL9的时候,发现开机的时候没有菜单选项(造成的原因暂未深究),也就无法通过e进入救援模式了,这是有潜在风险的。那么,如何让菜单展示出来呢,还是说,菜单损坏了?后来发现,其实只是timeout设置成了0,只需要修改成非0的数据,就可以让开机后的菜单显现出来那么如何修改了?......
  • el-table单选2
    <template> <el-table ref="singleTable" :data="tableData" tooltip-effect="dark" style="width:100%" @select="rowSelect" > <el-table-columntype="selection"width="......