Reducir código y generar gráficos dinámicos

Actualmente estoy realizando el juego de N Reinas y a pesar de que eh logrado generar los gráficos que representan a las reinas. Mi problemática es que quiero agregar estas piezas de forma dinámica ya que dejare que el usuario seleccione la cantidad de reinas que desea colocar en el tablero, mi problema surge cuando le quiero agregar el método MouseDragged a cada pieza en el tablero pero el problema es que solo los eh podido agregar de forma manual y quisiera agregarlos de forma dinámica o saber si existe otra forma de hacer esto que quiero.

public class OtraPrueba extends JFrame {      JPanel jpanel = (JPanel) this.getContentPane();     JLabel label[] = new JLabel[8];     Border border = BorderFactory.createLineBorder(Color.black, 1);     int N = 0, recX, recY;      public static void main(String[] args) {         OtraPrueba op = new OtraPrueba();         op.setBounds(0, 0, 500, 500);         op.setVisible(true);         op.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);     }      public OtraPrueba() {         jpanel.setLayout(null);         jpanel.setBackground(Color.CYAN);          for (int i = 0; i < label.length; i++) {             label[i] = new JLabel();             label[i].setBounds(25 + (50 * i), 25, 30, 30);             label[i].setText("Q" + (i + 1));             label[i].setBorder(border);             label[i].setHorizontalAlignment(SwingConstants.CENTER);             jpanel.add(label[i], null);         }          label[0].addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {             @Override             public void mouseDragged(java.awt.event.MouseEvent evt) {                 j1MouseDragged(evt);             }         });         label[1].addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {             @Override             public void mouseDragged(java.awt.event.MouseEvent evt) {                 j2MouseDragged(evt);             }         });         label[2].addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {             @Override             public void mouseDragged(java.awt.event.MouseEvent evt) {                 j3MouseDragged(evt);             }         });         label[3].addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {             @Override             public void mouseDragged(java.awt.event.MouseEvent evt) {                 j4MouseDragged(evt);             }         });         label[4].addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {             @Override             public void mouseDragged(java.awt.event.MouseEvent evt) {                 j5MouseDragged(evt);             }         });         label[5].addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {             @Override             public void mouseDragged(java.awt.event.MouseEvent evt) {                 j6MouseDragged(evt);             }         });         label[6].addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {             @Override             public void mouseDragged(java.awt.event.MouseEvent evt) {                 j7MouseDragged(evt);             }         });         label[7].addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {             @Override             public void mouseDragged(java.awt.event.MouseEvent evt) {                 j8MouseDragged(evt);             }         });     }      public void j1MouseDragged(java.awt.event.MouseEvent evt) {         label[0].setLocation(newPosition(evt)[0], newPosition(evt)[1]);     }      public void j2MouseDragged(java.awt.event.MouseEvent evt) {         label[1].setLocation(newPosition(evt)[0], newPosition(evt)[1]);     }      public void j3MouseDragged(java.awt.event.MouseEvent evt) {         label[2].setLocation(newPosition(evt)[0], newPosition(evt)[1]);     }      public void j4MouseDragged(java.awt.event.MouseEvent evt) {         label[3].setLocation(newPosition(evt)[0], newPosition(evt)[1]);     }      public void j5MouseDragged(java.awt.event.MouseEvent evt) {         label[4].setLocation(newPosition(evt)[0], newPosition(evt)[1]);     }      public void j6MouseDragged(java.awt.event.MouseEvent evt) {         label[5].setLocation(newPosition(evt)[0], newPosition(evt)[1]);     }      public void j7MouseDragged(java.awt.event.MouseEvent evt) {         label[6].setLocation(newPosition(evt)[0], newPosition(evt)[1]);     }      public void j8MouseDragged(java.awt.event.MouseEvent evt) {         label[7].setLocation(newPosition(evt)[0], newPosition(evt)[1]);     }      public int[] newPosition(MouseEvent evt) {         int newX, newY;         if (evt.getXOnScreen() <= 25) {             newX = 25;         } else if (evt.getXOnScreen() <= 75) {             newX = 75;         } else if (evt.getXOnScreen() <= 125) {             newX = 125;         } else if (evt.getXOnScreen() <= 175) {             newX = 175;         } else if (evt.getXOnScreen() <= 225) {             newX = 225;         } else if (evt.getXOnScreen() <= 275) {             newX = 275;         } else if (evt.getXOnScreen() <= 325) {             newX = 325;         } else if (evt.getXOnScreen() <= 375) {             newX = 375;         } else {             newX = 375;         }          if (evt.getYOnScreen() <= 25) {             newY = 25;         } else if (evt.getYOnScreen() <= 75) {             newY = 75;         } else if (evt.getYOnScreen() <= 125) {             newY = 125;         } else if (evt.getYOnScreen() <= 175) {             newY = 175;         } else if (evt.getYOnScreen() <= 225) {             newY = 225;         } else if (evt.getYOnScreen() <= 275) {             newY = 275;         } else if (evt.getYOnScreen() <= 325) {             newY = 325;         } else if (evt.getYOnScreen() <= 375) {             newY = 375;         } else {             newY = 375;         }          recX = newX;         recY = newY;          int retorno[] = {newX, newY};          return retorno;     }  } 

Error de Filtro en Select Dinamicos

estoy haciendo al mal, el problema es que filtre los datos de mi base de datos porque son 145,958, mediante selects dinamicos, que al momento de que el usuario seleccione el pais, le muestre los estados de ese pais y a su vez las ciudades de ese estado y por ultimo solo las colonias de esa ciudad, alimente mi base de datos y cree las relaciones entre tablas sin problema y al seleccionar el pais si me muestra los estados relacionados, el problema es la ciudad esta no carga absolutamente nada al seleccionar el estado, no se que estoy haciendo mal simplemente deja todo en blaco, siento que algo no anda bien en mi archivo JS, no soy muy bueno en java haha, espero puedan ayudarme a ver que anda mal:

Adjunto imagen: introducir la descripción de la imagen aquí

Tengo mi codigo de la siguiente manera ¿Que estoy omitiendo o haciendo mal?

Primero cree el modelo Country:

<?php  namespace App;  use Illuminate\Database\Eloquent\Model;  class Country extends Model {         protected $  table = 'Countries';         protected $  fillable = ['name']; } 

el modelo town:

<?php  namespace App;  use Illuminate\Database\Eloquent\Model;  class Town extends Model {     protected $  table = 'towns';     protected $  fillable = ['name','state_id'];     public static function towns($  id){         return Town::where('state_id','=',$  id)         ->get();     } } 

Y el modelo State:

namespace App;  use Illuminate\Database\Eloquent\Model;  class State extends Model {     protected $  table = 'states';     protected $  fillable = ['name', 'country_id'];     public static function states($  id){         return State::where('country_id','=',$  id)         ->get();     } } 

Despues cree la rutas y las dirigi a su funcion correspondiente en el controlador DeniedController:

Route::get('states/{id}', 'DeniedController@getStates'); Route::get('towns/{id}', 'DeniedController@getTowns'); 

el DeniedController:

<?php  namespace App\Http\Controllers;  use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Closure; use Illuminate\Contracts\Auth\Guard; use App\Country; use App\State; use App\Town;  class DeniedController extends Controller {      public function __construct()     {         $  this->middleware('auth');     }      public function index()     {         $  countries = Country::pluck('name', 'id');         return view('admin.wizard',compact('countries'));     }     public function getStates(Request $  request, $  id){         if($  request->ajax()){             $  states = State::states($  id);             return response()->json($  states);         }     }     public function getTowns(Request $  request, $  id){         if($  request->ajax()){             $  towns = Town::towns($  id);             return response()->json($  towns);         }     } } 

Cree el archivo JS que se encarga de recibir los id y filtrar llamado dropdown.js y lo inclui en la vista:

$  ("#country").change(function(event){     $  .get("states/"+event.target.value+"",function(response,country){         $  ("#state").empty();         for(i=0; i<response.length; i++){             $  ("#state").append("<option value'"+response[i].id+"'> "+response[i].name+"</option>");         }     }); });  $  ("#state").change(function(event){     $  .get("towns/"+event.target.value+"",function(response,state){         $  ("#town").empty();         for(i=0; i<response.length; i++){             $  ("#town").append("<option value'"+response[i].id+"'> "+response[i].name+"</option>");         }     }); }); 

Y por ultimo en el formulario agregue los select:

 {!! Form::select('country',$  countries,null,['id'=>'country', 'class' => 'form-control']) !!} //Se encarga de listar los paises {!! Form::select('state',['placeholder'=>'Selecciona'],null,['id'=>'state', 'class'=>'form-control']) !!}//Lista los estados que corresponden al pais {!! Form::select('town',['placeholder'=>'Selecciona'],null,['id'=>'town', 'class'=>'form-control']) !!}//Lista las ciudades del estado seleccionado 

Componentes dinâmicos no angular

Bom dia, sou novo no angular 7 e gostaria de uma ajuda. Imaginem que tenho uma tela pai ontem possuo uma array de produtos apenas com o ID, gostaria de criar componentes (acredito que seja isso) dinâmicos onde irei passar o id para cada componente e cada um que receber o id se responsabiliza para ir buscar o restante das informações do produto em alguma fonte de dados e preencher o restante dos campos de sua responsabilidade. Ou seja cada um carregaria de forma assincrona suas informações sem interferência entre eles. Então por exemplo minha tela pai tem um array com 3 ids, ele irá chamar 3 componentes passando um id para cada componente e esses componentes irão buscar as informações para preencher os dados como nome do produto, valor etc, porém de forma assíncrona, então por exemplo o componente 1 vai estar atualizando, enquanto o componente 2 já atualizou e o componente 3 também está atualizando. Para o usuário iria aparecer 3 “caixinhas” uma delas já com a informações do produto (componente 2) e as outras 2 com um loading (pois os componentes ainda estão carregando. Não tenho ideia de como pesquisar isso, gostaria de algum exemplo pode ser básico para eu entender pelo menos o conceito é conseguir aplicar a minha plataforma.

Muito obrigado !

Conteúdos dinámicos de um componente

Pessoal estou tentando criar um componente card que seja reutilizável, porem quando fui fazer um teste de utilização me deu esse erro

 ERROR TypeError: templateRef.createEmbeddedView is not a function 

Card.HTML

<div class="card">  <div class="card--title">   <ng-container *ngTemplateOutlet="title"></ng-container>  </div>  <div class="card--container">  <div class="card--conteiner-contentPrimary">   <ng-container *ngTemplateOutlet="containerPrimary"></ng-container>  </div>  <div class="card--conteiner-contentSegundary">   <ng-container *ngTemplateOutlet="containerSegundary"></ng-container>  </div>  </div> </div> 

Card.component.ts

@ContentChild('title', {static: true }) title: TemplateRef<any>;  @ContentChild('containerPrimary', {static: true }) containerPrimary:  TemplateRef<any>;  @ContentChild('containerSegundary', {static: true })  containerSegundary: TemplateRef<any>;  ngOnInit() {   } 

PageView.html

<card>  <div #title>   teste de titulo do card  </div>  <div #contentPrimary>   Primario  </div>   <div #contentSegundary>    Segundario  </div> </card> 

No que posso estar errando?

Titulos de paginas dinamicos MVC

estoy aprendiendo a crear páginas con el modelo MVC usando PHP y quería saber cómo cambiar el título de la página de forma dinámica, porque tal cómo está ahora se mantiene el mismo título siempre. He intentado por ejemplo pasarlo por $ _SESSION pero sólo me sirve cuando vengo desde un header(), en los demás casos no puedo hacerlo, también he buscado la forma de leer la url pero no lo consigo tampoco. He buscado por internet pero no encuentro una solución. Podría decirme alguien cómo se hace con PHP o es mejor hacerlo con Javascript tal vez ? Muchísimas gracias

promediar los resultados dinámicos de mi tabla y que de un numero entero

quiero sacar el promedio de mi tabla de registros dinámicos y con inputs y que de un valor entero.Intente lo siguiente , suma automaticamente los de class=”nota” de cada registro .Funciona bien ,pero , si le pongo el codigo comentado total =parseInt(total); me dara un resultado producto del primer cambio entre 4(por que son 4 inputs).ejemplo ingreso el numero 4 y lo divide entre 4 eso se guarda en total pero si sigue sumando lógicamente va dar un número menor.Necesite que este sea un numero entero despues de llenar los 4 inputs.

<script type="text/javascript">  $  ('.nota').change(function (event) { dataRows=$  (this).parents('tr.suma');   total = 0;   $  (dataRows).find('.nota').each(function (index, el) {     value = $  (el).val() || 0         value =value/4;     total += value;     //total =parseInt(total);          });    $  (dataRows).find('.promedio').val(total); }); </script>    

Como hacer select dinamicos?

tengo el siguiente código:

<select name="dia">         <?php         for ($  i=1; $  i<=31; $  i++) {             if ($  i == date('d'))                 echo '<option value="'.$  i.'" selected>'.$  i.'</option>';             else if($  i < date('d'))                 echo '';             else                echo '<option value="'.$  i.'">'.$  i.'</option>';          }         ?> </select>  <select name="mes">         <?php         for ($  i=1; $  i<=12; $  i++) {             if ($  i == date('m'))                 echo '<option value="'.$  i.'" selected>'.$  i.'</option>';                         else if ($  i < date('m'))               echo '';             else                 echo '<option value="'.$  i.'">'.$  i.'</option>';         }         ?> </select>  <select name="ano">         <?php         for($  i=date('Y'); $  i>=date('Y'); $  i--){             if ($  i == date('Y'))                 echo '<option value="'.$  i.'" selected>'.$  i.'</option>';             else                 echo '<option value="'.$  i.'">'.$  i.'</option>';         }         ?> </select>

Son tres select, día, mes y año, lo que deseo es que al seleccionar el mes 5 u otro en adelante al mes que me muestra, me carguen los días correspondientes a ese mes, ahora que lo publico, marca 17/4/2019.

¿Se puede hacer?, ¿Qué se les ocurre?.

Botões com imagens dinâmicos com kivy


Problema

Tenho um botão com imagem circular, com a imagem na proporção 1:1, e ao executar o código (abaixo) o programa gera uma tela com proporção também de 1:1, mas é possível redimensionar a tela e alterar sua proporção e tamanho, porém, a imagem não cresce junto como a tela e ocupa um espaço proporcional menor. Tentei definir valores para o size_hint:, porém ele distorce a imagem, menos em uma única proporção. Como posso tornar esse botão adaptável em relação a qualquer proporção e tamanho, sem distorções e com o mesmo espaço proporcional?

Tela gerada (1:1)

Tela gerada

Tela redimensionada (16:9)

Tela redimensionada

Código

import kivy kivy.require('1.9.0')  from kivy.app import App from kivy.uix.floatlayout import FloatLayout from kivy.uix.image import Image  class FloatingApp(App):      def build(self):         return FloatLayout()  flApp = FloatingApp()  flApp.run() 

Arquivo .kv

<Botao@Button>:     font_size: 32     color: 1, 1, 1, 1     size: 138, 138     background_normal: 'bd.png'     background_down: 'bd1.png'     background_color: 0.88, 0.88, 0.88, 1       size_hint: None, None  <FloatLayout>:     Botao:          text:"Botao"         pos_hint: {"center_x": .5, "center_y": .5} 

ID dinámicos con jquery

La idea principal de este ejercicio es crear un sistema que se pueda utilizar en un restaurante donde se pueda seleccionar una mesa y se pueda agregar los productos que desee estoy trabajando con PHP, Mysql, Jquery intento de llenar el td de la tabla que tienen id dinámicos que funcionan de la siguiente forma:

function agrega_fila(){ var td = 0; var qty = 0; var producto = 0; var peso = 0; var precio = 0;  function agrega_fila(){     qty ++;     td ++;     producto ++;     peso ++;     precio ++;     fila = ' <tr id="fila'+td+'" ><td class="col-xs-3" ><div id="qty'+qty+'"></div></td><td class="col-xs-3" id="producto'+producto+'"></td><td class="col-xs-3"><div class="input-group"><div class="input-group-addon">Kg</div><input id="peso'+peso+'" class="form-control input-md"  type="text" value="0"></div></td><td class="col-xs-3"><div class="input-group"><div class="input-group-addon">$  </div><input id="precio'+precio+'" class="form-control input-md"  type="text" value="0"></div></td></tr>';     $  ("#fila").before(fila);  } 

luego con ajax solicite los datos del producto seleccionado y retorna con un json

 $  (document).ready(function(){ //Carga los productos al formulario  $  ("#selec-prod button").click(function(){           id_prod = $  (this).val();           id_mesa = $  ("#btn-mesas option:selected").val();          if(id_mesa == null){              alert("Es necesario que seleccione una mesa");          }else{                  $  .ajax({                  type:"GET",                  url:"lib/pedidos/select_producto.php",                  data:{id_prod:id_prod,id_mesa:id_mesa},                  dataType:"json",                  success: function(data){                         var cant = prompt("Ingresar Cantidad:");                         if(cant>0){                              $  ('#qty).text(cant);//llenado de las filas                              $  ('#producto').text(data.DESC);                             $  ('#precio').val(data.PRECIO);                             agrega_fila();// se agrega una fila  adicional                           }else{                             alert ("La cantidad debe ser mayor a 0");                         }                  },error:function(res){                         alert("[AJAX] Error: capturando el arreglo!! ");                       }             });          }   });  }); 

Mi duda es ¿Cómo puedo llenar la entrada de datos dinámicos en esta parte de mi código? sonda con siguiente pero no me funciono

var qty =0; qty ++;  $  ('#qty'+qty).text(cant);//llenado de las filas  $  ('#producto').text(data.DESC); $  ('#precio').val(data.PRECIO);