diff --git a/src/components/fieldsListForms/CardForm.jsx b/src/components/fieldsListForms/CardForm.jsx
index 639a67db16101f5561f02a670426c2877439258f..1e2a0f9197d7c9bbb6e5e75019d910ee0010d9a3 100644
--- a/src/components/fieldsListForms/CardForm.jsx
+++ b/src/components/fieldsListForms/CardForm.jsx
@@ -1,9 +1,12 @@
 import React, { useState, useEffect } from "react";
 import Divider from "@material-ui/core/Divider";
+import api from "../../api";
+import createBackendForm from "../fieldsDisplayForm/utils/BackendTranslation";
 import ExpansionPanel from "@material-ui/core/ExpansionPanel";
 import ExpansionPanelSummary from "@material-ui/core/ExpansionPanelSummary";
 import ExpansionPanelDetails from "@material-ui/core/ExpansionPanelDetails";
 import IconButton from "@material-ui/core/IconButton";
+import Chip from "@material-ui/core/Chip";
 import Tooltip from "@material-ui/core/Tooltip";
 import Typography from "@material-ui/core/Typography";
 import { makeStyles } from "@material-ui/core/styles";
@@ -15,65 +18,69 @@ import EditOutlinedIcon from "@material-ui/icons/EditOutlined";
 import ShareButton from "./ShareButton";
 import VisibilityOutlinedIcon from "@material-ui/icons/VisibilityOutlined";
 import QuestionAnswerOutlinedIcon from "@material-ui/icons/QuestionAnswerOutlined";
+import { get } from "object-path";
 
-const useStyles = makeStyles(theme => ({
+const useStyles = makeStyles((theme) => ({
   title: {
     fontSize: 20,
     flex: 1,
     width: 0,
+    marginLeft: 5,
     textAlign: "center",
-    color: "#667079"
+    color: "#667079",
   },
 
   description: {
-    alignSelf: "center"
+    alignSelf: "center",
   },
 
   container: {
     display: "flex",
     flexWrap: "wrap",
     justifyContent: "flex-start",
-    color: "#667079"
+    color: "#667079",
   },
 
   item: {
-    margin: "5px"
+    margin: "5px",
   },
 
   expPainelD: {
-    display: "block"
+    display: "block",
   },
 
   date: {
     fontSize: 16,
     textAlign: "center",
-    color: "#667079"
+    color: "#667079",
   },
 
   create: {
     fontSize: 13,
     textAlign: "center",
-    color: "#667079"
+    color: "#667079",
   },
 
   icons: {
     marginLeft: "20%",
     ["@media (max-width: 370px)"]: {
-      marginLeft: "10%"
-    }
+      marginLeft: "10%",
+    },
   },
 
   numberOfAnswers: {
     fontSize: 18,
     textAlign: "center",
-    margin: "7px"
-  }
+    margin: "7px",
+  },
 }));
 
 function CardForm(props) {
   const classes = useStyles();
   const history = useHistory();
 
+  const [formData, setFormData] = useState(0);
+
   const handleAnswer = () => {
     //redirecionar para /answer/props.id
     if (props.numberOfAnswers) {
@@ -96,14 +103,53 @@ function CardForm(props) {
     history.push(path);
   };
 
-  function handleDelete(value) {
+  function handleDeactivate(value) {
     if (value) {
-      // deleteForm();
+      deactivateForm(props.status);
     }
   }
 
-  async function deleteForm() {
-    // const res = await api
+  async function getForm(id) {
+    const res = await api
+      .get(`/form/${id}`)
+      .then(function (res) {
+        setFormData(res.data);
+      })
+      .catch((error) => {
+        if (error.response.status === 401) {
+          window.sessionStorage.removeItem("token");
+          window.sessionStorage.removeItem("userId");
+          let path = `/signin`;
+          history.push(path);
+          return;
+        }
+      });
+  }
+
+  async function deactivateForm(status) {
+    var newForm = { ...formData };
+    newForm.status = !status;
+
+    const res = await api
+      .put(`/form/${props.id}`, newForm, {
+        headers: {
+          authorization: `bearer ${window.sessionStorage.getItem("token")}`,
+        },
+      })
+      .then(function (error) {
+        if (!error.response)
+          alert(`Formulário ${props.status ? "desativado!" : "reativado!"}`);
+        history.go(0);
+      })
+      .catch((error) => {
+        if (error.response.status === 401) {
+          window.sessionStorage.removeItem("token");
+          window.sessionStorage.removeItem("userId");
+          let path = `/signin`;
+          history.push(path);
+          return;
+        }
+      });
   }
 
   function manageDate(date) {
@@ -116,9 +162,14 @@ function CardForm(props) {
     return newDate.toLocaleDateString("pt-BR", options);
   }
 
+  useEffect(() => {
+    getForm(props.id);
+  }, [props.id]);
+
   return (
-    <ExpansionPanel>
+    <ExpansionPanel class={classes.card}>
       <ExpansionPanelSummary expandIcon={<MoreVertOutlinedIcon />}>
+        {!props.status ? <Chip size="small" label="Desativado" /> : null}
         <Typography noWrap className={classes.title}>
           {props.title}
           <br />
@@ -148,12 +199,15 @@ function CardForm(props) {
         </Tooltip>
 
         <Tooltip title="Respostas" arrow>
-          <IconButton aria-label="delete" onClick={handleAnswer}>
+          <IconButton aria-label="answers" onClick={handleAnswer}>
             <QuestionAnswerOutlinedIcon />
           </IconButton>
         </Tooltip>
 
-        {/*<DeleteButton handleDelete={handleDelete} />*/}
+        <DeleteButton
+          handleDeactivate={handleDeactivate}
+          status={props.status}
+        />
       </ExpansionPanelDetails>
     </ExpansionPanel>
   );
diff --git a/src/components/fieldsListForms/DeleteButton.jsx b/src/components/fieldsListForms/DeleteButton.jsx
index 244545bc5d3517a877ef08b9b4bf7632c516d6e3..ad9b9e6590aacf495c41d0df7badd0171f0319cf 100644
--- a/src/components/fieldsListForms/DeleteButton.jsx
+++ b/src/components/fieldsListForms/DeleteButton.jsx
@@ -1,7 +1,8 @@
 import React from "react";
 import Button from "@material-ui/core/Button";
 import Dialog from "@material-ui/core/Dialog";
-import DeleteOutlineOutlinedIcon from "@material-ui/icons/DeleteOutlineOutlined";
+import HighlightOffOutlined from "@material-ui/icons/HighlightOffOutlined";
+import CheckCircleOutline from "@material-ui/icons/CheckCircleOutline";
 import IconButton from "@material-ui/core/IconButton";
 import DialogActions from "@material-ui/core/DialogActions";
 import Tooltip from "@material-ui/core/Tooltip";
@@ -9,13 +10,16 @@ import DialogTitle from "@material-ui/core/DialogTitle";
 import { useTheme } from "@material-ui/core/styles";
 
 import { makeStyles } from "@material-ui/core/styles";
-const useStyles = makeStyles(theme => ({
-  buttonNo: {
-    color: "red"
+const useStyles = makeStyles((theme) => ({
+  buttonDeactivate: {
+    color: "red",
+  },
+  buttonReactivate: {
+    color: "green",
   },
   buttonYes: {
-    color: "blue"
-  }
+    color: "blue",
+  },
 }));
 
 function DeleteButton(props) {
@@ -29,12 +33,12 @@ function DeleteButton(props) {
 
   const handleCloseFalse = () => {
     setOpen(false);
-    props.handleDelete(false);
+    props.handleDeactivate(false);
   };
 
   const handleCloseTrue = () => {
     setOpen(false);
-    props.handleDelete(true);
+    props.handleDeactivate(true);
   };
 
   const handleClose = () => {
@@ -43,9 +47,9 @@ function DeleteButton(props) {
 
   return (
     <>
-      <Tooltip title="Deletar" arrow>
+      <Tooltip title={props.status ? "Desativar" : "Reativar"} arrow>
         <IconButton aria-label="delete" onClick={handleClickOpen}>
-          <DeleteOutlineOutlinedIcon />
+          {props.status ? <HighlightOffOutlined /> : <CheckCircleOutline />}
         </IconButton>
       </Tooltip>
       <Dialog
@@ -54,14 +58,27 @@ function DeleteButton(props) {
         aria-labelledby="responsive-dialog-title"
       >
         <DialogTitle id="responsive-dialog-title">
-          {"Tem certeza que deseja deletar este formulário?"}
+          {props.status
+            ? "Tem certeza que deseja desativar este formulário?"
+            : "Tem certeza que deseja reativar este formulário?"}
         </DialogTitle>
         <DialogActions>
-          <Button autoFocus onClick={handleCloseFalse} className={classes.buttonYes} color="primary">
-            Não deletar
+          <Button
+            autoFocus
+            onClick={handleCloseFalse}
+            className={classes.buttonYes}
+            color="primary"
+          >
+            Não {props.status ? "Desativar" : "Reativar"}
           </Button>
-          <Button onClick={handleCloseTrue} className={classes.buttonNo} autoFocus>
-            Deletar
+          <Button
+            onClick={handleCloseTrue}
+            className={
+              props.status ? classes.buttonDeactivate : classes.buttonReactivate
+            }
+            autoFocus
+          >
+            {props.status ? "Desativar" : "Reativar"}
           </Button>
         </DialogActions>
       </Dialog>
@@ -69,4 +86,4 @@ function DeleteButton(props) {
   );
 }
 
-export default DeleteButton;
\ No newline at end of file
+export default DeleteButton;
diff --git a/src/components/fieldsListForms/Tab.jsx b/src/components/fieldsListForms/Tab.jsx
index e4b96d696c5f59ef72f83577051a93ab5be38f5e..00fcb8d09caa6ee6ea4a6d93f2db475869235cef 100644
--- a/src/components/fieldsListForms/Tab.jsx
+++ b/src/components/fieldsListForms/Tab.jsx
@@ -1,6 +1,8 @@
 import React, { useState, useEffect } from "react";
 import Button from "@material-ui/core/Button";
 import FormControl from "@material-ui/core/FormControl";
+import FormControlLabel from "@material-ui/core/FormControlLabel";
+import Switch from "@material-ui/core/Switch";
 import Grid from "@material-ui/core/Grid";
 import MenuItem from "@material-ui/core/MenuItem";
 import Select from "@material-ui/core/Select";
@@ -9,12 +11,12 @@ import SearchBar from "./SearchBar.jsx";
 import { useHistory } from "react-router-dom";
 
 import { makeStyles } from "@material-ui/core/styles";
-const useStyles = makeStyles(theme => ({
+const useStyles = makeStyles((theme) => ({
   container: {
     flexDirection: "row",
     justifyContent: "space-between",
     backgroundColor: "white",
-    marginBottom: "20px"
+    marginBottom: "20px",
   },
 
   formControl: {
@@ -22,12 +24,12 @@ const useStyles = makeStyles(theme => ({
     minWidth: 120,
     ["@media (max-width: 446px)"]: {
       marginLeft: "100px",
-      marginBottom: "20px"
-    }
+      marginBottom: "20px",
+    },
   },
 
   selectEmpty: {
-    marginTop: theme.spacing(2)
+    marginTop: theme.spacing(2),
   },
 
   button: {
@@ -39,45 +41,69 @@ const useStyles = makeStyles(theme => ({
     ["@media (max-width: 710px)"]: {
       marginBottom: "20px",
       marginLeft: "170px",
-      marginBottom: "20px"
+      marginBottom: "20px",
     },
     ["@media (max-width: 446px)"]: {
       marginLeft: "60px",
-      marginBottom: "20px"
-    }
+      marginBottom: "20px",
+    },
   },
 
   gridButton: {
     display: "flex",
     alignItems: "center",
     marginRight: "20px",
-    color: "white"
+    color: "white",
   },
 
   gridMenu: {
     width: "254px",
     display: "flex",
     alignItems: "center",
-    marginLeft: "20px"
+    marginLeft: "20px",
+    ["@media (max-width: 446px)"]: {
+      flexDirection: "column",
+    },
+  },
+
+  gridSwitch: {
+    width: "254px",
+    display: "flex",
+    marginLeft: "20px",
+    ["@media (max-width: 446px)"]: {
+      marginLeft: "100px",
+    },
   },
 
   searchBar: {
     display: "flex",
-    justifyContent: "center"
-  }
+    justifyContent: "center",
+  },
 }));
 
 function Tab(props) {
   const classes = useStyles();
   const history = useHistory();
   const [seletectedValue, setseletectedValue] = React.useState("");
+  const [disabled, setDisabled] = React.useState(false);
+  const [searchString, setSearchString] = React.useState("");
 
   /** Function to handle event */
-  const handleChange = event => {
-    props.sort(event.target.value);
+  const handleChange = (event) => {
+    props.sort(event.target.value, disabled, searchString);
     setseletectedValue(event.target.value);
   };
 
+  const handleSwitch = (event) => {
+    props.sort(seletectedValue, event.target.checked, searchString);
+    setDisabled(event.target.checked);
+  };
+
+  const handleSearch = (value) => {
+    props.sort(seletectedValue, disabled, value);
+    setSearchString(value);
+  };
+
   const handleClick = () => {
     let path = `/create`;
     history.push(path);
@@ -94,9 +120,7 @@ function Tab(props) {
             className={classes.selectEmpty}
             inputProps={{ "aria-label": "Without label" }}
           >
-            <MenuItem value="">
-              Original
-            </MenuItem>
+            <MenuItem value="">Original</MenuItem>
             <MenuItem value={1}>Alfabética</MenuItem>
             <MenuItem value={2}>Mais recente</MenuItem>
             <MenuItem value={3}>Relevância</MenuItem>
@@ -104,9 +128,22 @@ function Tab(props) {
           </Select>
           <FormHelperText>Ordenar</FormHelperText>
         </FormControl>
+        <Grid item className={classes.gridSwitch}>
+          <FormControlLabel
+            control={
+              <Switch
+                checked={disabled}
+                onChange={handleSwitch}
+                name="checkedB"
+                color="primary"
+              />
+            }
+            label="Ocultar formulários desativados"
+          />
+        </Grid>
       </Grid>
       <Grid justify="center" className={classes.searchBar}>
-        <SearchBar searching={props.searching} />
+        <SearchBar searching={handleSearch} />
       </Grid>
       <Grid item className={classes.gridButton}>
         <Button
diff --git a/src/components/fieldsVisualizeForm/FormFieldSubform.js b/src/components/fieldsVisualizeForm/FormFieldSubform.js
index 038d612e0e66821f8554e839e23807f9f5f41ad8..895c5f3136e3305833f781a3a6b506f5b9a514e2 100644
--- a/src/components/fieldsVisualizeForm/FormFieldSubform.js
+++ b/src/components/fieldsVisualizeForm/FormFieldSubform.js
@@ -61,6 +61,7 @@ function FormFieldSubform(props) {
   return (
     <>
       {formData ? (
+        formData.status ? (
         formData.inputs.map((input, index) => {
           if (input.type === 0)
             return (
@@ -107,7 +108,7 @@ function FormFieldSubform(props) {
               />
             );
         })
-      ) : (
+      ) : "") : (
         <Grid container justify="center" className={classes.progress}>
           <CircularProgress />
         </Grid>
diff --git a/src/pages/AnswerForm.js b/src/pages/AnswerForm.js
index 494a09b38f9f68f1284ef065fea786868eb78c39..85d69f860964e84d8f93ec7a77609a37efe8cedd 100644
--- a/src/pages/AnswerForm.js
+++ b/src/pages/AnswerForm.js
@@ -2,6 +2,7 @@ import React, { useState, useEffect } from "react";
 import { useParams } from "react-router-dom";
 import { makeStyles } from "@material-ui/core/styles";
 import Grid from "@material-ui/core/Grid";
+import Typography  from "@material-ui/core/Typography";
 import api from "../api";
 import Button from "@material-ui/core/Button";
 import { useHistory } from "react-router-dom";
@@ -277,8 +278,10 @@ function AnwserForm() {
       alignItems="center"
       justify="center"
     >
+      
       <Grid item className={classes.questions}>
         {formData ? (
+          formData.status ? (
           <div>
             <FormFieldTitle
               title={formData.title}
@@ -341,22 +344,28 @@ function AnwserForm() {
                 );
             })}
           </div>
-        ) : (
+        ) : 
+          <Grid item>
+            <Typography variant="h4">
+              Este formulário foi desativado pelo seu dono.
+            </Typography>
+          </Grid>) : (
             <Grid container justify="center" className={classes.progress}>
               <CircularProgress />
             </Grid>
           )}
       </Grid>
-      <Grid>
-        <Button
-          type="submit"
-          variant="contained"
-          className={classes.button}
-          onClick={() => answerForm(id)}
-        >
-          Responder
-        </Button>
-      </Grid>
+      {formData. status ? 
+        <Grid>
+          <Button
+            type="submit"
+            variant="contained"
+            className={classes.button}
+            onClick={() => answerForm(id)}
+          >
+            Responder
+          </Button>
+        </Grid> : ""}
     </Grid>
   );
 }
diff --git a/src/pages/ListForms.js b/src/pages/ListForms.js
index 7c5e07b099b7396d4289213d434d11b5d23c944b..eb279e5c73945a5a6ddb469b8ba5d94b1035a736 100644
--- a/src/pages/ListForms.js
+++ b/src/pages/ListForms.js
@@ -41,37 +41,51 @@ export default function ListForms() {
   /**
    * Sorting function to sort the forms by some especified type.
    * @param type - the type of the sorting that was selected.
+   * @param switchstate - whether or not the "hide disabled forms" switch is active.
+   * @param string - the string value to be searched.
    */
-  function sort(type) {
+  function sort(type, switchstate, string) {
+    const switchForms = switchstate ? [...forms].filter(f => f.status) : [...forms];
+    const searchForms = [...switchForms].filter(value => {
+      return value.title.toLowerCase().includes(string.toLowerCase());
+    });
+    
     setAuxForms([]);
     if (type === "") {
-      const tmp = [...forms].sort(function (a, b) {
+      const tmp = [...searchForms].sort(function (a, b) {
         return a.id > b.id ? 1 : -1;
       });
       setAuxForms(tmp);
     } else if (type === 1) {
-      const tmp = [...forms].sort((a, b) => {
+      const tmp = [...searchForms].sort((a, b) => {
         return a.title.toLowerCase().localeCompare(b.title.toLowerCase());
       });
       setAuxForms(tmp);
     } else if (type === 2) {
-      const tmp = [...forms].sort(function (a, b) {
+      const tmp = [...searchForms].sort(function (a, b) {
         return a.id < b.id ? 1 : -1;
       });
       setAuxForms(tmp);
     } else if (type === 3) {
-      const tmp = [...forms].sort(function (a, b) {
+      const notDisabled = [...searchForms].filter(f => f.status);
+      const disabled = [...searchForms].filter(f => !f.status);
+      const tmp1 = [...notDisabled].sort(function (a, b) {
+        return a.answersNumber < b.answersNumber ? 1 : -1;
+      });
+      const tmp2 = [...disabled].sort(function (a, b) {
         return a.answersNumber < b.answersNumber ? 1 : -1;
       });
+      const tmp = [...tmp1, ...tmp2];
+
       setAuxForms(tmp);
     } else if (type === 4) {
-      let tmp = [...forms]
+      let tmp = [...searchForms]
         .filter(value => {
           return value.date;
         })
         .sort((a, b) => a.date > b.date)
         .concat(
-          [...forms].filter(value => {
+          [...searchForms].filter(value => {
             return value.date === "";
           })
         );
@@ -82,7 +96,7 @@ export default function ListForms() {
   /**
    * Function to search for a form title.
    * @param string - the string value to be searched.
-   */
+
   function searching(string) {
     setAuxForms(
       [...forms].filter(value => {
@@ -90,6 +104,7 @@ export default function ListForms() {
       })
     );
   }
+   */
 
   /**
    * Async function to get all of the forms from an user.
@@ -99,8 +114,8 @@ export default function ListForms() {
     const res = await api
       .get(`/user/list/${id}`)
       .then(function (res) {
-        setForms(res.data.sort((a, b) => a.id > b.id));
-        setAuxForms(res.data.sort((a, b) => a.id > b.id));
+        setForms((res.data.sort((a, b) => a.id > b.id)));
+        setAuxForms((res.data.sort((a, b) => a.id > b.id)));
         setisLoaded(true);
       })
       .catch(error => {
@@ -121,7 +136,7 @@ export default function ListForms() {
   return isLoaded ? (
     <>
       <div>
-        <Tab sort={sort} searching={searching} />
+        <Tab sort={sort}/>
         <Container>
           <Grid className={classes.Forms}>Seus Formulários:</Grid>
           <Grid container justify="center" spacing={3} className={classes.body}>
@@ -134,6 +149,8 @@ export default function ListForms() {
                     description={form.description}
                     numberOfAnswers={form.answersNumber}
                     date={form.date}
+                    status={form.status}
+                    formObj={form}
                   />
                 </Grid>
               ))